@sprucelabs/spruce-cli 19.2.2 → 19.2.4
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.
- package/CHANGELOG.md +16 -0
- package/build/GlobalEmitter.js +2 -3
- package/build/GlobalEmitter.js.map +1 -1
- package/build/InFlightEntertainment.js +1 -2
- package/build/InFlightEntertainment.js.map +1 -1
- package/build/__tests__/behavioral/AddingADependency.test.js +2 -3
- package/build/__tests__/behavioral/AddingADependency.test.js.map +1 -1
- package/build/__tests__/behavioral/BlockingCommands.test.js +2 -3
- package/build/__tests__/behavioral/BlockingCommands.test.js.map +1 -1
- package/build/__tests__/behavioral/BootingTheCli.test.js +2 -3
- package/build/__tests__/behavioral/BootingTheCli.test.js.map +1 -1
- package/build/__tests__/behavioral/BootingWithBadFiles.test.js +2 -3
- package/build/__tests__/behavioral/BootingWithBadFiles.test.js.map +1 -1
- package/build/__tests__/behavioral/CreatingAConversationTopic.test.js +2 -3
- package/build/__tests__/behavioral/CreatingAConversationTopic.test.js.map +1 -1
- package/build/__tests__/behavioral/DeployingASkill.test.js +2 -3
- package/build/__tests__/behavioral/DeployingASkill.test.js.map +1 -1
- package/build/__tests__/behavioral/DeployingToSandbox.test.js +2 -3
- package/build/__tests__/behavioral/DeployingToSandbox.test.js.map +1 -1
- package/build/__tests__/behavioral/EnablingAndDisablingCache.test.js +2 -3
- package/build/__tests__/behavioral/EnablingAndDisablingCache.test.js.map +1 -1
- package/build/__tests__/behavioral/GettingCliVersion.test.js +2 -3
- package/build/__tests__/behavioral/GettingCliVersion.test.js.map +1 -1
- package/build/__tests__/behavioral/ManagingDependencies.test.js +2 -3
- package/build/__tests__/behavioral/ManagingDependencies.test.js.map +1 -1
- package/build/__tests__/behavioral/OverridingCommandsInPackageJson.test.js +2 -3
- package/build/__tests__/behavioral/OverridingCommandsInPackageJson.test.js.map +1 -1
- package/build/__tests__/behavioral/RegisteringConversationsOnBoot.test.js +2 -3
- package/build/__tests__/behavioral/RegisteringConversationsOnBoot.test.js.map +1 -1
- package/build/__tests__/behavioral/RememberingUpgradeSelections.test.js +2 -3
- package/build/__tests__/behavioral/RememberingUpgradeSelections.test.js.map +1 -1
- package/build/__tests__/behavioral/SettingLogTransportsInASkill.test.js +2 -3
- package/build/__tests__/behavioral/SettingLogTransportsInASkill.test.js.map +1 -1
- package/build/__tests__/behavioral/SettingRemote.test.js +2 -3
- package/build/__tests__/behavioral/SettingRemote.test.js.map +1 -1
- package/build/__tests__/behavioral/SettingUpVscode.test.js +2 -3
- package/build/__tests__/behavioral/SettingUpVscode.test.js.map +1 -1
- package/build/__tests__/behavioral/TestingAConversation.test.js +2 -3
- package/build/__tests__/behavioral/TestingAConversation.test.js.map +1 -1
- package/build/__tests__/behavioral/errors/CreatingANewErrorBuilder.test.js +2 -3
- package/build/__tests__/behavioral/errors/CreatingANewErrorBuilder.test.js.map +1 -1
- package/build/__tests__/behavioral/errors/KeepingErrorClassInSync.test.js +2 -3
- package/build/__tests__/behavioral/errors/KeepingErrorClassInSync.test.js.map +1 -1
- package/build/__tests__/behavioral/errors/KeepingErrorsInSync.test.js +2 -3
- package/build/__tests__/behavioral/errors/KeepingErrorsInSync.test.js.map +1 -1
- package/build/__tests__/behavioral/errors/SettingUpErrors.test.js +2 -3
- package/build/__tests__/behavioral/errors/SettingUpErrors.test.js.map +1 -1
- package/build/__tests__/behavioral/eventContract/PullingMercuryEventContract.test.js +2 -3
- package/build/__tests__/behavioral/eventContract/PullingMercuryEventContract.test.js.map +1 -1
- package/build/__tests__/behavioral/events/CreatingAListener.test.js +2 -3
- package/build/__tests__/behavioral/events/CreatingAListener.test.js.map +1 -1
- package/build/__tests__/behavioral/events/CreatingAnEvent.test.js +2 -3
- package/build/__tests__/behavioral/events/CreatingAnEvent.test.js.map +1 -1
- package/build/__tests__/behavioral/events/EventWriter.test.js +2 -3
- package/build/__tests__/behavioral/events/EventWriter.test.js.map +1 -1
- package/build/__tests__/behavioral/events/KeepingEventsInSync.test.js +2 -3
- package/build/__tests__/behavioral/events/KeepingEventsInSync.test.js.map +1 -1
- package/build/__tests__/behavioral/events/KeepingEventsInSync2.test.js +2 -3
- package/build/__tests__/behavioral/events/KeepingEventsInSync2.test.js.map +1 -1
- package/build/__tests__/behavioral/events/KeepingListenersInSync.test.js +2 -3
- package/build/__tests__/behavioral/events/KeepingListenersInSync.test.js.map +1 -1
- package/build/__tests__/behavioral/events/ListeningToAnEventYouCreate.test.js +2 -3
- package/build/__tests__/behavioral/events/ListeningToAnEventYouCreate.test.js.map +1 -1
- package/build/__tests__/behavioral/events/ListeningToCoreEvents.test.js +2 -3
- package/build/__tests__/behavioral/events/ListeningToCoreEvents.test.js.map +1 -1
- package/build/__tests__/behavioral/events/RegisteringEventsOnBoot.test.js +2 -3
- package/build/__tests__/behavioral/events/RegisteringEventsOnBoot.test.js.map +1 -1
- package/build/__tests__/behavioral/events/RegisteringGlobalEvents.test.js +2 -3
- package/build/__tests__/behavioral/events/RegisteringGlobalEvents.test.js.map +1 -1
- package/build/__tests__/behavioral/events/SettingUpEvents.test.js +2 -3
- package/build/__tests__/behavioral/events/SettingUpEvents.test.js.map +1 -1
- package/build/__tests__/behavioral/events/SkillEmitsBootEvents.test.js +2 -3
- package/build/__tests__/behavioral/events/SkillEmitsBootEvents.test.js.map +1 -1
- package/build/__tests__/behavioral/events/SyncingEventsOnlyFromDependencies.test.js +2 -3
- package/build/__tests__/behavioral/events/SyncingEventsOnlyFromDependencies.test.js.map +1 -1
- package/build/__tests__/behavioral/node/CreatingANodeModule.test.js +2 -3
- package/build/__tests__/behavioral/node/CreatingANodeModule.test.js.map +1 -1
- package/build/__tests__/behavioral/onboard/StartingOnboarding.test.js +5 -7
- package/build/__tests__/behavioral/onboard/StartingOnboarding.test.js.map +1 -1
- package/build/__tests__/behavioral/organization/CreatingAnOrg.test.js +2 -3
- package/build/__tests__/behavioral/organization/CreatingAnOrg.test.js.map +1 -1
- package/build/__tests__/behavioral/permissions/CreatingPermissions.test.js +2 -3
- package/build/__tests__/behavioral/permissions/CreatingPermissions.test.js.map +1 -1
- package/build/__tests__/behavioral/permissions/PermissionPlugin.test.js +2 -3
- package/build/__tests__/behavioral/permissions/PermissionPlugin.test.js.map +1 -1
- package/build/__tests__/behavioral/permissions/PermissionStore.test.js +2 -3
- package/build/__tests__/behavioral/permissions/PermissionStore.test.js.map +1 -1
- package/build/__tests__/behavioral/permissions/PermissionWriter.test.js +2 -3
- package/build/__tests__/behavioral/permissions/PermissionWriter.test.js.map +1 -1
- package/build/__tests__/behavioral/permissions/SyncingPermissions.test.js +4 -6
- package/build/__tests__/behavioral/permissions/SyncingPermissions.test.js.map +1 -1
- package/build/__tests__/behavioral/permissions/support/AbstractPermissionsTest.js +2 -3
- package/build/__tests__/behavioral/permissions/support/AbstractPermissionsTest.js.map +1 -1
- package/build/__tests__/behavioral/person/LoggingInAsPerson.test.js +2 -3
- package/build/__tests__/behavioral/person/LoggingInAsPerson.test.js.map +1 -1
- package/build/__tests__/behavioral/person/SeeWhoIsLoggedIn.test.js +2 -3
- package/build/__tests__/behavioral/person/SeeWhoIsLoggedIn.test.js.map +1 -1
- package/build/__tests__/behavioral/polish/SettingUpPolish.test.js +2 -3
- package/build/__tests__/behavioral/polish/SettingUpPolish.test.js.map +1 -1
- package/build/__tests__/behavioral/schemas/CreatingANewSchemaBuilder.test.js +2 -3
- package/build/__tests__/behavioral/schemas/CreatingANewSchemaBuilder.test.js.map +1 -1
- package/build/__tests__/behavioral/schemas/CreatingSchemasWithGenerics.test.js +2 -3
- package/build/__tests__/behavioral/schemas/CreatingSchemasWithGenerics.test.js.map +1 -1
- package/build/__tests__/behavioral/schemas/GeneratingFieldTypesOnly.test.js +2 -3
- package/build/__tests__/behavioral/schemas/GeneratingFieldTypesOnly.test.js.map +1 -1
- package/build/__tests__/behavioral/schemas/GettingSchemasFromHealthCheck.test.js +2 -3
- package/build/__tests__/behavioral/schemas/GettingSchemasFromHealthCheck.test.js.map +1 -1
- package/build/__tests__/behavioral/schemas/HandlesRelatedSchemas.test.js +2 -3
- package/build/__tests__/behavioral/schemas/HandlesRelatedSchemas.test.js.map +1 -1
- package/build/__tests__/behavioral/schemas/ImportingSchemaImports.test.js +2 -3
- package/build/__tests__/behavioral/schemas/ImportingSchemaImports.test.js.map +1 -1
- package/build/__tests__/behavioral/schemas/KeepingSchemasInSync.test.js +2 -3
- package/build/__tests__/behavioral/schemas/KeepingSchemasInSync.test.js.map +1 -1
- package/build/__tests__/behavioral/schemas/SettingUpSchemas.test.js +2 -3
- package/build/__tests__/behavioral/schemas/SettingUpSchemas.test.js.map +1 -1
- package/build/__tests__/behavioral/schemas/SettingUpSchemasForModuleDistribution.test.js +2 -3
- package/build/__tests__/behavioral/schemas/SettingUpSchemasForModuleDistribution.test.js.map +1 -1
- package/build/__tests__/behavioral/schemas/SyncingBadSchemasProvidesHelpfulErrorMessages.test.js +2 -3
- package/build/__tests__/behavioral/schemas/SyncingBadSchemasProvidesHelpfulErrorMessages.test.js.map +1 -1
- package/build/__tests__/behavioral/schemas/UsingSchemasInCli.test.js +3 -4
- package/build/__tests__/behavioral/schemas/UsingSchemasInCli.test.js.map +1 -1
- package/build/__tests__/behavioral/skill/BootingASkill.test.js +2 -3
- package/build/__tests__/behavioral/skill/BootingASkill.test.js.map +1 -1
- package/build/__tests__/behavioral/skill/CreatingASkill.test.js +2 -3
- package/build/__tests__/behavioral/skill/CreatingASkill.test.js.map +1 -1
- package/build/__tests__/behavioral/skill/InstallingASkillAtAnOrg.test.js +2 -3
- package/build/__tests__/behavioral/skill/InstallingASkillAtAnOrg.test.js.map +1 -1
- package/build/__tests__/behavioral/skill/LoggingInAsASkill.test.js +2 -3
- package/build/__tests__/behavioral/skill/LoggingInAsASkill.test.js.map +1 -1
- package/build/__tests__/behavioral/skill/RebuildingASkill.test.js +2 -3
- package/build/__tests__/behavioral/skill/RebuildingASkill.test.js.map +1 -1
- package/build/__tests__/behavioral/skill/RegisteringASkill.test.js +2 -3
- package/build/__tests__/behavioral/skill/RegisteringASkill.test.js.map +1 -1
- package/build/__tests__/behavioral/skill/SettingUpASkill.test.js +2 -3
- package/build/__tests__/behavioral/skill/SettingUpASkill.test.js.map +1 -1
- package/build/__tests__/behavioral/stores/CreatingADataStore.test.js +2 -3
- package/build/__tests__/behavioral/stores/CreatingADataStore.test.js.map +1 -1
- package/build/__tests__/behavioral/stores/KeepingDataStoresInSync.test.js +2 -3
- package/build/__tests__/behavioral/stores/KeepingDataStoresInSync.test.js.map +1 -1
- package/build/__tests__/behavioral/tests/CreatingATest.test.js +2 -3
- package/build/__tests__/behavioral/tests/CreatingATest.test.js.map +1 -1
- package/build/__tests__/behavioral/tests/RunningTests.test.js +2 -3
- package/build/__tests__/behavioral/tests/RunningTests.test.js.map +1 -1
- package/build/__tests__/behavioral/tests/SelectingAnAbstractTestClass.test.js +2 -3
- package/build/__tests__/behavioral/tests/SelectingAnAbstractTestClass.test.js.map +1 -1
- package/build/__tests__/behavioral/tests/SettingUpASkillForTesting.test.js +2 -3
- package/build/__tests__/behavioral/tests/SettingUpASkillForTesting.test.js.map +1 -1
- package/build/__tests__/behavioral/tests/SettingUpTests.test.js +2 -3
- package/build/__tests__/behavioral/tests/SettingUpTests.test.js.map +1 -1
- package/build/__tests__/behavioral/tests/TestReporterSettingsRemembered.test.js +2 -3
- package/build/__tests__/behavioral/tests/TestReporterSettingsRemembered.test.js.map +1 -1
- package/build/__tests__/behavioral/tests/TestingDataStores.test.js +2 -3
- package/build/__tests__/behavioral/tests/TestingDataStores.test.js.map +1 -1
- package/build/__tests__/behavioral/upgrading/UpdatingDependencies.test.js +2 -3
- package/build/__tests__/behavioral/upgrading/UpdatingDependencies.test.js.map +1 -1
- package/build/__tests__/behavioral/upgrading/UpdatingDependencies2.test.js +2 -3
- package/build/__tests__/behavioral/upgrading/UpdatingDependencies2.test.js.map +1 -1
- package/build/__tests__/behavioral/upgrading/UpgradingANodeModule.test.js +2 -3
- package/build/__tests__/behavioral/upgrading/UpgradingANodeModule.test.js.map +1 -1
- package/build/__tests__/behavioral/upgrading/UpgradingASkill.test.js +2 -3
- package/build/__tests__/behavioral/upgrading/UpgradingASkill.test.js.map +1 -1
- package/build/__tests__/behavioral/upgrading/UpgradingASkill2.test.js +2 -3
- package/build/__tests__/behavioral/upgrading/UpgradingASkill2.test.js.map +1 -1
- package/build/__tests__/behavioral/upgrading/UpgradingASkill3.test.js +2 -3
- package/build/__tests__/behavioral/upgrading/UpgradingASkill3.test.js.map +1 -1
- package/build/__tests__/behavioral/upgrading/UpgradingASkill4.test.js +2 -3
- package/build/__tests__/behavioral/upgrading/UpgradingASkill4.test.js.map +1 -1
- package/build/__tests__/behavioral/upgrading/UpgradingASkill5.test.js +5 -8
- package/build/__tests__/behavioral/upgrading/UpgradingASkill5.test.js.map +1 -1
- package/build/__tests__/behavioral/upgrading/UpgradingWithListeners.test.js +2 -3
- package/build/__tests__/behavioral/upgrading/UpgradingWithListeners.test.js.map +1 -1
- package/build/__tests__/behavioral/upgrading/UpgradingWithSandboxFeatureInstalled.test.js +2 -3
- package/build/__tests__/behavioral/upgrading/UpgradingWithSandboxFeatureInstalled.test.js.map +1 -1
- package/build/__tests__/behavioral/views/CreatingASkillView.test.js +2 -3
- package/build/__tests__/behavioral/views/CreatingASkillView.test.js.map +1 -1
- package/build/__tests__/behavioral/views/CreatingATheme.test.js +2 -3
- package/build/__tests__/behavioral/views/CreatingATheme.test.js.map +1 -1
- package/build/__tests__/behavioral/views/KeepingViewsInSync.test.js +2 -3
- package/build/__tests__/behavioral/views/KeepingViewsInSync.test.js.map +1 -1
- package/build/__tests__/behavioral/views/RegisteringSkillViewOnBoot.test.js +2 -3
- package/build/__tests__/behavioral/views/RegisteringSkillViewOnBoot.test.js.map +1 -1
- package/build/__tests__/behavioral/views/SettingUpViews.test.js +2 -3
- package/build/__tests__/behavioral/views/SettingUpViews.test.js.map +1 -1
- package/build/__tests__/behavioral/views/TestingViewControllers.test.js +2 -3
- package/build/__tests__/behavioral/views/TestingViewControllers.test.js.map +1 -1
- package/build/__tests__/behavioral/views/WatchingSkillViews.test.js +2 -3
- package/build/__tests__/behavioral/views/WatchingSkillViews.test.js.map +1 -1
- package/build/__tests__/behavioral/views/plugins/CreatingAViewPlugin.test.js +2 -3
- package/build/__tests__/behavioral/views/plugins/CreatingAViewPlugin.test.js.map +1 -1
- package/build/__tests__/behavioral/watchers/WatchingForChanges.test.js +2 -3
- package/build/__tests__/behavioral/watchers/WatchingForChanges.test.js.map +1 -1
- package/build/__tests__/implementation/ActionExecuter.test.js +2 -3
- package/build/__tests__/implementation/ActionExecuter.test.js.map +1 -1
- package/build/__tests__/implementation/ActionExecuter2.test.js +2 -3
- package/build/__tests__/implementation/ActionExecuter2.test.js.map +1 -1
- package/build/__tests__/implementation/ActionExecuter3.test.js +2 -3
- package/build/__tests__/implementation/ActionExecuter3.test.js.map +1 -1
- package/build/__tests__/implementation/ActionExecuter4.test.js +2 -3
- package/build/__tests__/implementation/ActionExecuter4.test.js.map +1 -1
- package/build/__tests__/implementation/ArgParser.test.js +3 -4
- package/build/__tests__/implementation/ArgParser.test.js.map +1 -1
- package/build/__tests__/implementation/BuildService.test.js +2 -3
- package/build/__tests__/implementation/BuildService.test.js.map +1 -1
- package/build/__tests__/implementation/BulkImporting.test.js +3 -4
- package/build/__tests__/implementation/BulkImporting.test.js.map +1 -1
- package/build/__tests__/implementation/CachingImports.test.js +2 -3
- package/build/__tests__/implementation/CachingImports.test.js.map +1 -1
- package/build/__tests__/implementation/CommandOptionBuilder.test.js +2 -3
- package/build/__tests__/implementation/CommandOptionBuilder.test.js.map +1 -1
- package/build/__tests__/implementation/CommanderCommandResultMapper.test.js +3 -4
- package/build/__tests__/implementation/CommanderCommandResultMapper.test.js.map +1 -1
- package/build/__tests__/implementation/DataStoreStore.test.js +2 -3
- package/build/__tests__/implementation/DataStoreStore.test.js.map +1 -1
- package/build/__tests__/implementation/DeletingOrphanedSchemaDefinitions.test.js +2 -3
- package/build/__tests__/implementation/DeletingOrphanedSchemaDefinitions.test.js.map +1 -1
- package/build/__tests__/implementation/EventContractCleanerUtil.test.js +3 -4
- package/build/__tests__/implementation/EventContractCleanerUtil.test.js.map +1 -1
- package/build/__tests__/implementation/EventStore.test.js +2 -3
- package/build/__tests__/implementation/EventStore.test.js.map +1 -1
- package/build/__tests__/implementation/EventTemplateItemBuilder.test.js +2 -3
- package/build/__tests__/implementation/EventTemplateItemBuilder.test.js.map +1 -1
- package/build/__tests__/implementation/FeatureCommandAttacher.test.js +2 -3
- package/build/__tests__/implementation/FeatureCommandAttacher.test.js.map +1 -1
- package/build/__tests__/implementation/FeatureFixture.test.js +2 -3
- package/build/__tests__/implementation/FeatureFixture.test.js.map +1 -1
- package/build/__tests__/implementation/FeatureInstaller.test.js +2 -3
- package/build/__tests__/implementation/FeatureInstaller.test.js.map +1 -1
- package/build/__tests__/implementation/FeaturesUtil.test.js +3 -4
- package/build/__tests__/implementation/FeaturesUtil.test.js.map +1 -1
- package/build/__tests__/implementation/FieldTemplateItemBuilder.test.js +2 -3
- package/build/__tests__/implementation/FieldTemplateItemBuilder.test.js.map +1 -1
- package/build/__tests__/implementation/GlobalEmitter.test.js +2 -3
- package/build/__tests__/implementation/GlobalEmitter.test.js.map +1 -1
- package/build/__tests__/implementation/Introspection.test.js +2 -3
- package/build/__tests__/implementation/Introspection.test.js.map +1 -1
- package/build/__tests__/implementation/JestJsonParser.test.js +3 -4
- package/build/__tests__/implementation/JestJsonParser.test.js.map +1 -1
- package/build/__tests__/implementation/LintService.test.js +2 -3
- package/build/__tests__/implementation/LintService.test.js.map +1 -1
- package/build/__tests__/implementation/ListenerStore.test.js +2 -3
- package/build/__tests__/implementation/ListenerStore.test.js.map +1 -1
- package/build/__tests__/implementation/OnboardingScriptLoader.test.js +2 -3
- package/build/__tests__/implementation/OnboardingScriptLoader.test.js.map +1 -1
- package/build/__tests__/implementation/OnboardingScriptPlayer.test.js +2 -3
- package/build/__tests__/implementation/OnboardingScriptPlayer.test.js.map +1 -1
- package/build/__tests__/implementation/OnboardingStore.test.js +2 -3
- package/build/__tests__/implementation/OnboardingStore.test.js.map +1 -1
- package/build/__tests__/implementation/OrganizationStore.test.js +2 -3
- package/build/__tests__/implementation/OrganizationStore.test.js.map +1 -1
- package/build/__tests__/implementation/ParentTestFinder.test.js +2 -3
- package/build/__tests__/implementation/ParentTestFinder.test.js.map +1 -1
- package/build/__tests__/implementation/PkgService.test.js +2 -3
- package/build/__tests__/implementation/PkgService.test.js.map +1 -1
- package/build/__tests__/implementation/SchemaStore.test.js +2 -3
- package/build/__tests__/implementation/SchemaStore.test.js.map +1 -1
- package/build/__tests__/implementation/SchemaTemplateItemBuilder.test.js +2 -3
- package/build/__tests__/implementation/SchemaTemplateItemBuilder.test.js.map +1 -1
- package/build/__tests__/implementation/SchemaValueTypeWriter.test.js +2 -3
- package/build/__tests__/implementation/SchemaValueTypeWriter.test.js.map +1 -1
- package/build/__tests__/implementation/ServiceFactory.test.js +2 -3
- package/build/__tests__/implementation/ServiceFactory.test.js.map +1 -1
- package/build/__tests__/implementation/SettingUpANodeModule.test.js +2 -3
- package/build/__tests__/implementation/SettingUpANodeModule.test.js.map +1 -1
- package/build/__tests__/implementation/SkillStore.test.js +2 -3
- package/build/__tests__/implementation/SkillStore.test.js.map +1 -1
- package/build/__tests__/implementation/StoreFeature.test.js +2 -3
- package/build/__tests__/implementation/StoreFeature.test.js.map +1 -1
- package/build/__tests__/implementation/TestReporter.test.js +2 -3
- package/build/__tests__/implementation/TestReporter.test.js.map +1 -1
- package/build/__tests__/implementation/TestRunner.test.js +2 -3
- package/build/__tests__/implementation/TestRunner.test.js.map +1 -1
- package/build/__tests__/implementation/ValueTypeMapping.test.js +2 -3
- package/build/__tests__/implementation/ValueTypeMapping.test.js.map +1 -1
- package/build/__tests__/implementation/Widgets.test.js +2 -3
- package/build/__tests__/implementation/Widgets.test.js.map +1 -1
- package/build/__tests__/support/EventFaker.js +1 -2
- package/build/__tests__/support/EventFaker.js.map +1 -1
- package/build/cli/Cli.js +1 -2
- package/build/cli/Cli.js.map +1 -1
- package/build/components/AbstractComponent.js +1 -2
- package/build/components/AbstractComponent.js.map +1 -1
- package/build/components/FormComponent.js +4 -6
- package/build/components/FormComponent.js.map +1 -1
- package/build/components/QuizComponent.js +1 -2
- package/build/components/QuizComponent.js.map +1 -1
- package/build/errors/SpruceError.js +2 -3
- package/build/errors/SpruceError.js.map +1 -1
- package/build/features/AbstractAction.js +1 -2
- package/build/features/AbstractAction.js.map +1 -1
- package/build/features/AbstractFeature.js +1 -2
- package/build/features/AbstractFeature.js.map +1 -1
- package/build/features/ActionExecuter.js +1 -2
- package/build/features/ActionExecuter.js.map +1 -1
- package/build/features/ActionFactory.js +1 -2
- package/build/features/ActionFactory.js.map +1 -1
- package/build/features/ActionQuestionAsker.js +1 -2
- package/build/features/ActionQuestionAsker.js.map +1 -1
- package/build/features/FeatureCommandAttacher.js +1 -2
- package/build/features/FeatureCommandAttacher.js.map +1 -1
- package/build/features/FeatureInstaller.js +1 -2
- package/build/features/FeatureInstaller.js.map +1 -1
- package/build/features/FeatureInstallerFactory.js +1 -2
- package/build/features/FeatureInstallerFactory.js.map +1 -1
- package/build/features/OverrideActionDecorator.js +1 -2
- package/build/features/OverrideActionDecorator.js.map +1 -1
- package/build/features/cache/CacheFeature.js +6 -8
- package/build/features/cache/CacheFeature.js.map +1 -1
- package/build/features/cache/actions/DisableAction.js +5 -7
- package/build/features/cache/actions/DisableAction.js.map +1 -1
- package/build/features/cache/actions/EnableAction.js +5 -7
- package/build/features/cache/actions/EnableAction.js.map +1 -1
- package/build/features/conversation/ConversationFeature.js +9 -11
- package/build/features/conversation/ConversationFeature.js.map +1 -1
- package/build/features/conversation/actions/CreateAction.js +4 -6
- package/build/features/conversation/actions/CreateAction.js.map +1 -1
- package/build/features/conversation/actions/TestAction.js +6 -8
- package/build/features/conversation/actions/TestAction.js.map +1 -1
- package/build/features/conversation/stores/ConversationStore.js +3 -5
- package/build/features/conversation/stores/ConversationStore.js.map +1 -1
- package/build/features/conversation/writers/ConversationWriter.js +2 -3
- package/build/features/conversation/writers/ConversationWriter.js.map +1 -1
- package/build/features/dependencies/DependencyFeature.js +8 -10
- package/build/features/dependencies/DependencyFeature.js.map +1 -1
- package/build/features/dependencies/actions/AddAction.js +5 -7
- package/build/features/dependencies/actions/AddAction.js.map +1 -1
- package/build/features/dependencies/actions/ManageAction.js +5 -7
- package/build/features/dependencies/actions/ManageAction.js.map +1 -1
- package/build/features/deploy/DeployFeature.js +8 -10
- package/build/features/deploy/DeployFeature.js.map +1 -1
- package/build/features/deploy/actions/HerokuAction.js +5 -7
- package/build/features/deploy/actions/HerokuAction.js.map +1 -1
- package/build/features/deploy/writers/DeployWriter.js +2 -3
- package/build/features/deploy/writers/DeployWriter.js.map +1 -1
- package/build/features/error/ErrorFeature.js +9 -11
- package/build/features/error/ErrorFeature.js.map +1 -1
- package/build/features/error/ParentTestFinder.js +1 -2
- package/build/features/error/ParentTestFinder.js.map +1 -1
- package/build/features/error/actions/CreateAction.js +4 -6
- package/build/features/error/actions/CreateAction.js.map +1 -1
- package/build/features/error/actions/SyncAction.js +5 -7
- package/build/features/error/actions/SyncAction.js.map +1 -1
- package/build/features/error/writers/ErrorWriter.js +2 -3
- package/build/features/error/writers/ErrorWriter.js.map +1 -1
- package/build/features/event/EventFeature.js +14 -16
- package/build/features/event/EventFeature.js.map +1 -1
- package/build/features/event/actions/CreateAction.js +4 -6
- package/build/features/event/actions/CreateAction.js.map +1 -1
- package/build/features/event/actions/ListenAction.js +5 -7
- package/build/features/event/actions/ListenAction.js.map +1 -1
- package/build/features/event/actions/SetRemoteAction.js +5 -7
- package/build/features/event/actions/SetRemoteAction.js.map +1 -1
- package/build/features/event/actions/SyncAction.js +5 -7
- package/build/features/event/actions/SyncAction.js.map +1 -1
- package/build/features/event/actions/SyncListenersAction.js +5 -7
- package/build/features/event/actions/SyncListenersAction.js.map +1 -1
- package/build/features/event/builders/EventContractBuilder.js +1 -2
- package/build/features/event/builders/EventContractBuilder.js.map +1 -1
- package/build/features/event/builders/ListenerTemplateItemBuilder.js +1 -2
- package/build/features/event/builders/ListenerTemplateItemBuilder.js.map +1 -1
- package/build/features/event/services/EventSettingsService.js +1 -2
- package/build/features/event/services/EventSettingsService.js.map +1 -1
- package/build/features/event/stores/EventStore.js +3 -5
- package/build/features/event/stores/EventStore.js.map +1 -1
- package/build/features/event/stores/ListenerStore.js +3 -5
- package/build/features/event/stores/ListenerStore.js.map +1 -1
- package/build/features/event/writers/EventWriter.js +2 -3
- package/build/features/event/writers/EventWriter.js.map +1 -1
- package/build/features/eventContract/EventContractFeature.js +9 -10
- package/build/features/eventContract/EventContractFeature.js.map +1 -1
- package/build/features/eventContract/actions/PullAction.js +5 -7
- package/build/features/eventContract/actions/PullAction.js.map +1 -1
- package/build/features/log/LogFeature.js +7 -9
- package/build/features/log/LogFeature.js.map +1 -1
- package/build/features/log/actions/CreateTransportAction.js +5 -7
- package/build/features/log/actions/CreateTransportAction.js.map +1 -1
- package/build/features/log/writers/LogWriter.js +2 -3
- package/build/features/log/writers/LogWriter.js.map +1 -1
- package/build/features/node/NodeFeature.js +12 -14
- package/build/features/node/NodeFeature.js.map +1 -1
- package/build/features/node/actions/CreateAction.js +5 -7
- package/build/features/node/actions/CreateAction.js.map +1 -1
- package/build/features/node/actions/UpdateDependenciesAction.js +6 -8
- package/build/features/node/actions/UpdateDependenciesAction.js.map +1 -1
- package/build/features/node/actions/UpgradeAction.js +5 -7
- package/build/features/node/actions/UpgradeAction.js.map +1 -1
- package/build/features/node/writers/NodeWriter.js +2 -3
- package/build/features/node/writers/NodeWriter.js.map +1 -1
- package/build/features/onboard/OnboardFeature.js +13 -15
- package/build/features/onboard/OnboardFeature.js.map +1 -1
- package/build/features/onboard/ScriptLoader.js +1 -2
- package/build/features/onboard/ScriptLoader.js.map +1 -1
- package/build/features/onboard/ScriptPlayer.js +1 -2
- package/build/features/onboard/ScriptPlayer.js.map +1 -1
- package/build/features/onboard/actions/OnboardAction.js +4 -6
- package/build/features/onboard/actions/OnboardAction.js.map +1 -1
- package/build/features/onboard/stores/OnboardingStore.js +3 -5
- package/build/features/onboard/stores/OnboardingStore.js.map +1 -1
- package/build/features/organization/OrganizationFeature.js +7 -8
- package/build/features/organization/OrganizationFeature.js.map +1 -1
- package/build/features/organization/actions/CreateAction.js +4 -6
- package/build/features/organization/actions/CreateAction.js.map +1 -1
- package/build/features/organization/actions/InstallAction.js +5 -7
- package/build/features/organization/actions/InstallAction.js.map +1 -1
- package/build/features/organization/stores/OrganizationStore.js +3 -5
- package/build/features/organization/stores/OrganizationStore.js.map +1 -1
- package/build/features/permission/PermissionFeature.js +10 -12
- package/build/features/permission/PermissionFeature.js.map +1 -1
- package/build/features/permission/actions/CreateAction.js +5 -7
- package/build/features/permission/actions/CreateAction.js.map +1 -1
- package/build/features/permission/actions/SyncAction.js +7 -9
- package/build/features/permission/actions/SyncAction.js.map +1 -1
- package/build/features/permission/stores/PermissionStore.js +3 -5
- package/build/features/permission/stores/PermissionStore.js.map +1 -1
- package/build/features/permission/writers/PermissionWriter.js +2 -3
- package/build/features/permission/writers/PermissionWriter.js.map +1 -1
- package/build/features/person/PersonFeature.js +8 -9
- package/build/features/person/PersonFeature.js.map +1 -1
- package/build/features/person/actions/LoginAction.js +5 -7
- package/build/features/person/actions/LoginAction.js.map +1 -1
- package/build/features/person/actions/LogoutAction.js +5 -7
- package/build/features/person/actions/LogoutAction.js.map +1 -1
- package/build/features/person/actions/WhoamiAction.js +5 -7
- package/build/features/person/actions/WhoamiAction.js.map +1 -1
- package/build/features/polish/PolishFeature.js +8 -9
- package/build/features/polish/PolishFeature.js.map +1 -1
- package/build/features/polish/actions/SetupAction.js +4 -6
- package/build/features/polish/actions/SetupAction.js.map +1 -1
- package/build/features/polish/writers/PolishWriter.js +2 -3
- package/build/features/polish/writers/PolishWriter.js.map +1 -1
- package/build/features/sandbox/SandboxFeature.js +7 -8
- package/build/features/sandbox/SandboxFeature.js.map +1 -1
- package/build/features/sandbox/actions/SetupAction.js +4 -6
- package/build/features/sandbox/actions/SetupAction.js.map +1 -1
- package/build/features/sandbox/writers/SandboxWriter.js +2 -3
- package/build/features/sandbox/writers/SandboxWriter.js.map +1 -1
- package/build/features/schema/SchemaFeature.js +10 -12
- package/build/features/schema/SchemaFeature.js.map +1 -1
- package/build/features/schema/ValueTypeBuilder.js +1 -2
- package/build/features/schema/ValueTypeBuilder.js.map +1 -1
- package/build/features/schema/actions/CreateAction.js +4 -6
- package/build/features/schema/actions/CreateAction.js.map +1 -1
- package/build/features/schema/actions/SyncAction.js +7 -9
- package/build/features/schema/actions/SyncAction.js.map +1 -1
- package/build/features/schema/actions/SyncFieldsAction.js +5 -7
- package/build/features/schema/actions/SyncFieldsAction.js.map +1 -1
- package/build/features/schema/services/SchemaService.js +2 -3
- package/build/features/schema/services/SchemaService.js.map +1 -1
- package/build/features/schema/stores/SchemaStore.js +3 -5
- package/build/features/schema/stores/SchemaStore.js.map +1 -1
- package/build/features/schema/writers/SchemaWriter.js +3 -5
- package/build/features/schema/writers/SchemaWriter.js.map +1 -1
- package/build/features/skill/SkillFeature.js +14 -16
- package/build/features/skill/SkillFeature.js.map +1 -1
- package/build/features/skill/actions/BootAction.js +7 -9
- package/build/features/skill/actions/BootAction.js.map +1 -1
- package/build/features/skill/actions/CreateAction.js +5 -7
- package/build/features/skill/actions/CreateAction.js.map +1 -1
- package/build/features/skill/actions/DashboardAction.js +5 -7
- package/build/features/skill/actions/DashboardAction.js.map +1 -1
- package/build/features/skill/actions/LoginAction.js +5 -7
- package/build/features/skill/actions/LoginAction.js.map +1 -1
- package/build/features/skill/actions/RebuildAction.js +5 -7
- package/build/features/skill/actions/RebuildAction.js.map +1 -1
- package/build/features/skill/actions/RegisterAction.js +5 -7
- package/build/features/skill/actions/RegisterAction.js.map +1 -1
- package/build/features/skill/stores/SkillStore.js +3 -5
- package/build/features/skill/stores/SkillStore.js.map +1 -1
- package/build/features/skill/updaters/Updater.js +1 -2
- package/build/features/skill/updaters/Updater.js.map +1 -1
- package/build/features/skill/writers/SkillWriter.js +2 -3
- package/build/features/skill/writers/SkillWriter.js.map +1 -1
- package/build/features/store/StoreFeature.js +10 -12
- package/build/features/store/StoreFeature.js.map +1 -1
- package/build/features/store/actions/CreateAction.js +4 -6
- package/build/features/store/actions/CreateAction.js.map +1 -1
- package/build/features/store/actions/SyncAction.js +5 -7
- package/build/features/store/actions/SyncAction.js.map +1 -1
- package/build/features/store/stores/StoreStore.js +3 -5
- package/build/features/store/stores/StoreStore.js.map +1 -1
- package/build/features/store/templateItemBuilders/StoreTemplateItemBuilder.js +1 -2
- package/build/features/store/templateItemBuilders/StoreTemplateItemBuilder.js.map +1 -1
- package/build/features/store/writers/StoreWriter.js +2 -3
- package/build/features/store/writers/StoreWriter.js.map +1 -1
- package/build/features/test/TestFeature.js +8 -10
- package/build/features/test/TestFeature.js.map +1 -1
- package/build/features/test/TestLogItemGenerator.js +1 -2
- package/build/features/test/TestLogItemGenerator.js.map +1 -1
- package/build/features/test/TestReporter.js +1 -2
- package/build/features/test/TestReporter.js.map +1 -1
- package/build/features/test/TestRunner.js +6 -8
- package/build/features/test/TestRunner.js.map +1 -1
- package/build/features/test/actions/CreateAction.js +4 -6
- package/build/features/test/actions/CreateAction.js.map +1 -1
- package/build/features/test/actions/SetupAction.js +5 -7
- package/build/features/test/actions/SetupAction.js.map +1 -1
- package/build/features/test/actions/TestAction.js +17 -19
- package/build/features/test/actions/TestAction.js.map +1 -1
- package/build/features/test/writers/TestWriter.js +2 -3
- package/build/features/test/writers/TestWriter.js.map +1 -1
- package/build/features/view/ViewFeature.js +8 -10
- package/build/features/view/ViewFeature.js.map +1 -1
- package/build/features/view/actions/CreateAction.js +5 -7
- package/build/features/view/actions/CreateAction.js.map +1 -1
- package/build/features/view/actions/CreatePluginAction.js +5 -7
- package/build/features/view/actions/CreatePluginAction.js.map +1 -1
- package/build/features/view/actions/CreateThemeAction.js +5 -7
- package/build/features/view/actions/CreateThemeAction.js.map +1 -1
- package/build/features/view/actions/SyncAction.js +5 -7
- package/build/features/view/actions/SyncAction.js.map +1 -1
- package/build/features/view/actions/WatchAction.js +7 -9
- package/build/features/view/actions/WatchAction.js.map +1 -1
- package/build/features/view/stores/ViewStore.js +3 -5
- package/build/features/view/stores/ViewStore.js.map +1 -1
- package/build/features/view/writers/ViewWriter.js +2 -3
- package/build/features/view/writers/ViewWriter.js.map +1 -1
- package/build/features/vscode/VsCodeFeature.js +7 -8
- package/build/features/vscode/VsCodeFeature.js.map +1 -1
- package/build/features/vscode/actions/SetupAction.js +6 -8
- package/build/features/vscode/actions/SetupAction.js.map +1 -1
- package/build/features/vscode/services/VsCodeService.js +2 -3
- package/build/features/vscode/services/VsCodeService.js.map +1 -1
- package/build/features/vscode/writers/VsCodeWriter.js +2 -3
- package/build/features/vscode/writers/VsCodeWriter.js.map +1 -1
- package/build/features/watch/WatchFeature.js +9 -11
- package/build/features/watch/WatchFeature.js.map +1 -1
- package/build/interfaces/SpyInterface.js +1 -2
- package/build/interfaces/SpyInterface.js.map +1 -1
- package/build/interfaces/TerminalInterface.js +2 -3
- package/build/interfaces/TerminalInterface.js.map +1 -1
- package/build/services/BuildService.js +1 -2
- package/build/services/BuildService.js.map +1 -1
- package/build/services/CommandService.js +1 -2
- package/build/services/CommandService.js.map +1 -1
- package/build/services/DependencyService.js +1 -2
- package/build/services/DependencyService.js.map +1 -1
- package/build/services/GameService.js +1 -2
- package/build/services/GameService.js.map +1 -1
- package/build/services/ImportService.js +1 -2
- package/build/services/ImportService.js.map +1 -1
- package/build/services/LintService.js +1 -2
- package/build/services/LintService.js.map +1 -1
- package/build/services/PkgService.js +3 -5
- package/build/services/PkgService.js.map +1 -1
- package/build/services/ServiceFactory.js +1 -2
- package/build/services/ServiceFactory.js.map +1 -1
- package/build/stores/AbstractLocalStore.js +2 -3
- package/build/stores/AbstractLocalStore.js.map +1 -1
- package/build/stores/AbstractStore.js +1 -2
- package/build/stores/AbstractStore.js.map +1 -1
- package/build/stores/StoreFactory.js +1 -2
- package/build/stores/StoreFactory.js.map +1 -1
- package/build/templateItemBuilders/EventTemplateItemBuilder.js +1 -2
- package/build/templateItemBuilders/EventTemplateItemBuilder.js.map +1 -1
- package/build/templateItemBuilders/FieldTemplateItemBuilder.js +1 -2
- package/build/templateItemBuilders/FieldTemplateItemBuilder.js.map +1 -1
- package/build/templateItemBuilders/SchemaTemplateItemBuilder.js +1 -2
- package/build/templateItemBuilders/SchemaTemplateItemBuilder.js.map +1 -1
- package/build/tests/AbstractCliTest.js +3 -4
- package/build/tests/AbstractCliTest.js.map +1 -1
- package/build/tests/AbstractErrorTest.js +2 -3
- package/build/tests/AbstractErrorTest.js.map +1 -1
- package/build/tests/AbstractEventTest.js +2 -3
- package/build/tests/AbstractEventTest.js.map +1 -1
- package/build/tests/AbstractSchemaTest.js +2 -3
- package/build/tests/AbstractSchemaTest.js.map +1 -1
- package/build/tests/AbstractSkillTest.js +2 -3
- package/build/tests/AbstractSkillTest.js.map +1 -1
- package/build/tests/AbstractTestTest.js +2 -3
- package/build/tests/AbstractTestTest.js.map +1 -1
- package/build/tests/CommandFaker.js +1 -2
- package/build/tests/CommandFaker.js.map +1 -1
- package/build/tests/JestJsonParser.js +1 -2
- package/build/tests/JestJsonParser.js.map +1 -1
- package/build/tests/MockProgramFactory.js +1 -2
- package/build/tests/MockProgramFactory.js.map +1 -1
- package/build/tests/cleanTestData.js +1 -1
- package/build/tests/cleanTestData.js.map +1 -1
- package/build/tests/fixtures/FeatureFixture.js +1 -2
- package/build/tests/fixtures/FeatureFixture.js.map +1 -1
- package/build/tests/fixtures/MercuryFixture.js +1 -2
- package/build/tests/fixtures/MercuryFixture.js.map +1 -1
- package/build/tests/fixtures/OrganizationFixture.js +1 -2
- package/build/tests/fixtures/OrganizationFixture.js.map +1 -1
- package/build/tests/fixtures/PersonFixture.js +1 -2
- package/build/tests/fixtures/PersonFixture.js.map +1 -1
- package/build/tests/fixtures/SkillFixture.js +1 -2
- package/build/tests/fixtures/SkillFixture.js.map +1 -1
- package/build/tests/fixtures/ViewFixture.js +1 -2
- package/build/tests/fixtures/ViewFixture.js.map +1 -1
- package/build/updaters/ScriptUpdater.js +1 -2
- package/build/updaters/ScriptUpdater.js.map +1 -1
- package/build/utilities/introspection.utility.js +1 -1
- package/build/utilities/introspection.utility.js.map +1 -1
- package/build/widgets/WidgetFactory.js +1 -2
- package/build/widgets/WidgetFactory.js.map +1 -1
- package/build/widgets/terminalKit/TKButtonWidget.js +6 -8
- package/build/widgets/terminalKit/TKButtonWidget.js.map +1 -1
- package/build/widgets/terminalKit/TkBaseWidget.js +14 -16
- package/build/widgets/terminalKit/TkBaseWidget.js.map +1 -1
- package/build/widgets/terminalKit/TkInputWidget.js +7 -9
- package/build/widgets/terminalKit/TkInputWidget.js.map +1 -1
- package/build/widgets/terminalKit/TkLayoutCellWidget.js +5 -7
- package/build/widgets/terminalKit/TkLayoutCellWidget.js.map +1 -1
- package/build/widgets/terminalKit/TkLayoutWidget.js +5 -7
- package/build/widgets/terminalKit/TkLayoutWidget.js.map +1 -1
- package/build/widgets/terminalKit/TkMenuBarWidget.js +6 -8
- package/build/widgets/terminalKit/TkMenuBarWidget.js.map +1 -1
- package/build/widgets/terminalKit/TkPopupWidget.js +5 -7
- package/build/widgets/terminalKit/TkPopupWidget.js.map +1 -1
- package/build/widgets/terminalKit/TkProgressBarWidget.js +5 -7
- package/build/widgets/terminalKit/TkProgressBarWidget.js.map +1 -1
- package/build/widgets/terminalKit/TkTextWidget.js +7 -9
- package/build/widgets/terminalKit/TkTextWidget.js.map +1 -1
- package/build/widgets/terminalKit/TkWindowWidget.js +15 -17
- package/build/widgets/terminalKit/TkWindowWidget.js.map +1 -1
- package/build/writers/AbstractWriter.js +1 -2
- package/build/writers/AbstractWriter.js.map +1 -1
- package/build/writers/WriterFactory.js +1 -2
- package/build/writers/WriterFactory.js.map +1 -1
- package/package.json +27 -27
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SchemaTemplateItemBuilder.test.js","names":["_schema","require","_spruceSkillUtils","_testUtils","_SchemaTemplateItemBuilder","_interopRequireDefault","_AbstractCliTest2","_nestedMercuryContrac","_nestedMercuryContrac2","_dec","_dec2","_dec3","_dec4","_dec5","_dec6","_dec7","_dec8","_dec9","_dec10","_dec11","_dec12","_dec13","_dec14","_dec15","_dec16","_class","_SchemaTemplateItemBuilderTest","_callSuper","t","o","e","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","apply","Boolean","prototype","valueOf","call","ownKeys","r","Object","keys","getOwnPropertySymbols","filter","getOwnPropertyDescriptor","enumerable","push","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","cowbellV1","id","version","name","fields","radius","type","cowbellV1TemplateItem","namespace","CORE_NAMESPACE","importFrom","nameCamel","namePascal","nameReadable","schema","isNested","destinationDir","cowbellV1NestedTemplateItem","cowbellV2","owner","options","schemaId","cowbellV2TemplateItem","schemaIds","cowbellV2NestedTemplateItem","personV1","personV1TemplateItem","personV2","favoriteVehicle","make","personV2TemplateItem","personV3","relatedField","schemas","personV3TemplateItem","vehicleV1TemplateItem","personV4","importsWhenLocal","importsWhenRemote","cowbells","personV4TemplateItem","imports","nestedMercuryContract","description","dynamicFieldSignature","keyName","responsePayload","valueType","emitPayload","listenPermissionsAny","emitPermissionsAny","nestedMercuryContractArray","mercuryTemplateItem","eventSignatureTemplateItem","mercuryTemplateItemArray","eventSignatureTemplateItem2","schemaWithManyNestedSchemas","firstLayer","secondLayer","lastLayer","pass","manyNestedTemplateItem","firstLayerTemplateItem","secondLayerTemplateItem","lastLayerTemplateItem","mercurySchemas","eventSignatures","isRequired","isArray","fullyQualifiedEventName","listenPermissions","emitPermissions","requireAllPermissions","defaultValue","permissions","label","hint","requireAllStatuses","defaults","groupManager","manager","teammate","guest","can","clockedIn","clockedOut","onPrem","offPrem","mercuryTemplateItems","localSchema","buildSchema","onlyField","localSchemaTemplateItem","SchemaTemplateItemBuilderTest","exports","test","_AbstractCliTest","_inherits2","_classCallCheck2","_createClass2","key","value","_beforeEach","_asyncToGenerator2","_regenerator","mark","_callee","wrap","_callee$","_context","prev","next","_get2","itemBuilder","SchemaTemplateItemBuilder","LOCAL_NAMESPACE","stop","beforeEach","canInstantiate","assert","isTruthy","hasGenerateFunction","isFunction","buildTemplateItems","turnsSingleDefinitionIntoTemplateItem","results","actual","isEqualDeep","generationTests","expected","localNamespace","undefined","isLength","idx","match","concat","setsImports","firstName","bringsImportsFromRemoteFromRelatedSchemas","remote","local","AbstractCliTest","_applyDecoratedDescriptor2"],"sources":["../../../src/__tests__/implementation/SchemaTemplateItemBuilder.test.ts"],"sourcesContent":["import { buildSchema, Schema, SchemaTemplateItem } from '@sprucelabs/schema'\nimport { CORE_NAMESPACE } from '@sprucelabs/spruce-skill-utils'\nimport { test, assert } from '@sprucelabs/test-utils'\nimport SchemaTemplateItemBuilder from '../../templateItemBuilders/SchemaTemplateItemBuilder'\nimport AbstractCliTest from '../../tests/AbstractCliTest'\n\nconst cowbellV1: Schema = {\n\tid: 'cowbell',\n\tversion: '2020_06_01',\n\tname: 'Cowbell test',\n\tfields: {\n\t\tradius: {\n\t\t\ttype: 'number',\n\t\t},\n\t},\n}\n\nconst cowbellV1TemplateItem: SchemaTemplateItem = {\n\tnamespace: CORE_NAMESPACE,\n\tid: cowbellV1.id,\n\timportFrom: '@sprucelabs/spruce-core-schemas',\n\tnameCamel: 'cowbell',\n\tnamePascal: 'Cowbell',\n\tnameReadable: 'Cowbell test',\n\tschema: { ...cowbellV1, namespace: CORE_NAMESPACE },\n\tisNested: false,\n\tdestinationDir: '#spruce/schemas',\n}\n\nconst cowbellV1NestedTemplateItem: SchemaTemplateItem = {\n\tnamespace: CORE_NAMESPACE,\n\tid: cowbellV1.id,\n\timportFrom: '@sprucelabs/spruce-core-schemas',\n\tnameCamel: 'cowbell',\n\tnamePascal: 'Cowbell',\n\tnameReadable: 'Cowbell test',\n\tschema: { ...cowbellV1, namespace: CORE_NAMESPACE },\n\tisNested: true,\n\tdestinationDir: '#spruce/schemas',\n}\n\nconst cowbellV2: Schema = {\n\tid: 'cowbell',\n\tversion: '2020_06_02',\n\tname: 'Cowbell test two!',\n\tfields: {\n\t\tradius: {\n\t\t\ttype: 'number',\n\t\t},\n\t\towner: {\n\t\t\ttype: 'schema',\n\t\t\toptions: {\n\t\t\t\tschemaId: { id: 'person', version: '2020_06_03' },\n\t\t\t},\n\t\t},\n\t},\n}\n\nconst cowbellV2TemplateItem: SchemaTemplateItem = {\n\tnamespace: CORE_NAMESPACE,\n\tid: cowbellV2.id,\n\tnameCamel: 'cowbell',\n\tnamePascal: 'Cowbell',\n\tnameReadable: 'Cowbell test two!',\n\tisNested: false,\n\tdestinationDir: '#spruce/schemas',\n\timportFrom: '@sprucelabs/spruce-core-schemas',\n\tschema: {\n\t\tid: 'cowbell',\n\t\tversion: '2020_06_02',\n\t\tname: 'Cowbell test two!',\n\t\tnamespace: CORE_NAMESPACE,\n\t\tfields: {\n\t\t\tradius: {\n\t\t\t\ttype: 'number',\n\t\t\t},\n\t\t\towner: {\n\t\t\t\ttype: 'schema',\n\t\t\t\toptions: {\n\t\t\t\t\tschemaIds: [\n\t\t\t\t\t\t{ id: 'person', version: '2020_06_03', namespace: CORE_NAMESPACE },\n\t\t\t\t\t],\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n}\n\nconst cowbellV2NestedTemplateItem: SchemaTemplateItem = {\n\tnamespace: CORE_NAMESPACE,\n\tid: cowbellV2.id,\n\tnameCamel: 'cowbell',\n\tnamePascal: 'Cowbell',\n\tnameReadable: 'Cowbell test two!',\n\tisNested: true,\n\tdestinationDir: '#spruce/schemas',\n\timportFrom: '@sprucelabs/spruce-core-schemas',\n\tschema: {\n\t\tid: 'cowbell',\n\t\tversion: '2020_06_02',\n\t\tname: 'Cowbell test two!',\n\t\tnamespace: CORE_NAMESPACE,\n\t\tfields: {\n\t\t\tradius: {\n\t\t\t\ttype: 'number',\n\t\t\t},\n\t\t\towner: {\n\t\t\t\ttype: 'schema',\n\t\t\t\toptions: {\n\t\t\t\t\tschemaIds: [\n\t\t\t\t\t\t{ id: 'person', version: '2020_06_03', namespace: CORE_NAMESPACE },\n\t\t\t\t\t],\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n}\n\nconst personV1: Schema = {\n\tid: 'person',\n\tversion: '2020_06_01',\n\tname: 'Person test',\n\tfields: {\n\t\tname: {\n\t\t\ttype: 'text',\n\t\t},\n\t},\n}\n\nconst personV1TemplateItem: SchemaTemplateItem = {\n\tnamespace: CORE_NAMESPACE,\n\timportFrom: '@sprucelabs/spruce-core-schemas',\n\tid: personV1.id,\n\tnameCamel: 'person',\n\tnamePascal: 'Person',\n\tnameReadable: 'Person test',\n\tschema: { ...personV1, namespace: CORE_NAMESPACE },\n\tisNested: false,\n\tdestinationDir: '#spruce/schemas',\n}\n\nconst personV2: Schema = {\n\tid: 'person',\n\tversion: '2020_06_01',\n\tname: 'Person version 2',\n\tfields: {\n\t\tname: {\n\t\t\ttype: 'text',\n\t\t},\n\t\tfavoriteVehicle: {\n\t\t\ttype: 'schema',\n\t\t\toptions: {\n\t\t\t\tschema: {\n\t\t\t\t\tid: 'vehicle',\n\t\t\t\t\tname: 'Vehicle v1',\n\t\t\t\t\tversion: '2020_06_01',\n\t\t\t\t\tfields: {\n\t\t\t\t\t\tmake: {\n\t\t\t\t\t\t\ttype: 'text',\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n}\n\nconst personV2TemplateItem: SchemaTemplateItem = {\n\tnamespace: CORE_NAMESPACE,\n\tid: personV1.id,\n\timportFrom: '@sprucelabs/spruce-core-schemas',\n\tnameCamel: 'person',\n\tnamePascal: 'Person',\n\tnameReadable: 'Person version 2',\n\tisNested: false,\n\tdestinationDir: '#spruce/schemas',\n\tschema: {\n\t\tid: 'person',\n\t\tversion: '2020_06_01',\n\t\tname: 'Person version 2',\n\t\tnamespace: CORE_NAMESPACE,\n\t\tfields: {\n\t\t\tname: {\n\t\t\t\ttype: 'text',\n\t\t\t},\n\t\t\tfavoriteVehicle: {\n\t\t\t\ttype: 'schema',\n\t\t\t\toptions: {\n\t\t\t\t\tschemaIds: [\n\t\t\t\t\t\t{ id: 'vehicle', version: '2020_06_01', namespace: CORE_NAMESPACE },\n\t\t\t\t\t],\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n}\n\nconst personV3: Schema = {\n\tid: 'person',\n\tversion: '2020_06_03',\n\tname: 'Person test the 3rd',\n\tfields: {\n\t\trelatedField: {\n\t\t\ttype: 'schema',\n\t\t\toptions: {\n\t\t\t\tschemas: [cowbellV1, cowbellV2],\n\t\t\t},\n\t\t},\n\t},\n}\n\nconst personV3TemplateItem: SchemaTemplateItem = {\n\tnamespace: CORE_NAMESPACE,\n\timportFrom: '@sprucelabs/spruce-core-schemas',\n\tid: personV3.id,\n\tnameCamel: 'person',\n\tnamePascal: 'Person',\n\tnameReadable: 'Person test the 3rd',\n\tisNested: false,\n\tdestinationDir: '#spruce/schemas',\n\tschema: {\n\t\tid: 'person',\n\t\tversion: '2020_06_03',\n\t\tname: 'Person test the 3rd',\n\t\tnamespace: CORE_NAMESPACE,\n\t\tfields: {\n\t\t\trelatedField: {\n\t\t\t\ttype: 'schema',\n\t\t\t\toptions: {\n\t\t\t\t\tschemaIds: [\n\t\t\t\t\t\t{ id: 'cowbell', version: '2020_06_01', namespace: CORE_NAMESPACE },\n\t\t\t\t\t\t{ id: 'cowbell', version: '2020_06_02', namespace: CORE_NAMESPACE },\n\t\t\t\t\t],\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n}\n\nconst vehicleV1TemplateItem: SchemaTemplateItem = {\n\tnamespace: CORE_NAMESPACE,\n\timportFrom: '@sprucelabs/spruce-core-schemas',\n\tid: 'vehicle',\n\tnameCamel: 'vehicle',\n\tnamePascal: 'Vehicle',\n\tnameReadable: 'Vehicle v1',\n\tisNested: true,\n\tdestinationDir: '#spruce/schemas',\n\tschema: {\n\t\tid: 'vehicle',\n\t\tname: 'Vehicle v1',\n\t\tnamespace: CORE_NAMESPACE,\n\t\tversion: '2020_06_01',\n\t\tfields: {\n\t\t\tmake: {\n\t\t\t\ttype: 'text',\n\t\t\t},\n\t\t},\n\t},\n}\n\nconst personV4: Schema = {\n\tid: 'person',\n\tversion: '2020_06_04',\n\tname: 'Person test the last',\n\timportsWhenLocal: [\"import BaseParent from '../../file'\"],\n\timportsWhenRemote: [\n\t\t\"import BaseParent from '@sprucelabs/spruce-core-schemas'\",\n\t],\n\tfields: {\n\t\tcowbells: {\n\t\t\ttype: 'schema',\n\t\t\toptions: {\n\t\t\t\tschemaIds: [\n\t\t\t\t\t{ id: 'cowbell', version: '2020_06_01' },\n\t\t\t\t\t{ id: 'cowbell', version: '2020_06_02' },\n\t\t\t\t],\n\t\t\t},\n\t\t},\n\t},\n}\n\nconst personV4TemplateItem: SchemaTemplateItem = {\n\tnamespace: CORE_NAMESPACE,\n\timportFrom: '@sprucelabs/spruce-core-schemas',\n\tid: personV4.id,\n\tnameCamel: 'person',\n\tnamePascal: 'Person',\n\tnameReadable: 'Person test the last',\n\tschema: {\n\t\tid: 'person',\n\t\tversion: '2020_06_04',\n\t\tname: 'Person test the last',\n\t\tnamespace: CORE_NAMESPACE,\n\t\timportsWhenLocal: [\"import BaseParent from '../../file'\"],\n\t\timportsWhenRemote: [\n\t\t\t\"import BaseParent from '@sprucelabs/spruce-core-schemas'\",\n\t\t],\n\t\tfields: {\n\t\t\tcowbells: {\n\t\t\t\ttype: 'schema',\n\t\t\t\toptions: {\n\t\t\t\t\tschemaIds: [\n\t\t\t\t\t\t{ id: 'cowbell', version: '2020_06_01', namespace: CORE_NAMESPACE },\n\t\t\t\t\t\t{ id: 'cowbell', version: '2020_06_02', namespace: CORE_NAMESPACE },\n\t\t\t\t\t],\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n\tisNested: false,\n\timports: [\"import BaseParent from '@sprucelabs/spruce-core-schemas'\"],\n\tdestinationDir: '#spruce/schemas',\n}\n\nconst nestedMercuryContract: Schema = {\n\tid: 'mercuryContract',\n\tname: 'Mercury Contract',\n\tdescription: '',\n\tversion: '2020_09_01',\n\tdynamicFieldSignature: {\n\t\ttype: 'schema',\n\t\tkeyName: 'fullyQualifiedEventName',\n\t\toptions: {\n\t\t\tschema: {\n\t\t\t\tid: 'eventSignature',\n\t\t\t\tname: 'Event Signature',\n\t\t\t\tdescription: '',\n\t\t\t\tfields: {\n\t\t\t\t\tresponsePayload: {\n\t\t\t\t\t\ttype: 'raw',\n\t\t\t\t\t\toptions: { valueType: 'Schema' },\n\t\t\t\t\t},\n\t\t\t\t\temitPayload: {\n\t\t\t\t\t\ttype: 'raw',\n\t\t\t\t\t\toptions: { valueType: 'Schema' },\n\t\t\t\t\t},\n\t\t\t\t\tlistenPermissionsAny: {\n\t\t\t\t\t\ttype: 'text',\n\t\t\t\t\t},\n\t\t\t\t\temitPermissionsAny: {\n\t\t\t\t\t\ttype: 'text',\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n}\n\nconst nestedMercuryContractArray: Schema = {\n\tid: 'mercuryContract',\n\tname: 'Mercury Contract',\n\tdescription: '',\n\tversion: '2020_09_01',\n\n\tdynamicFieldSignature: {\n\t\ttype: 'schema',\n\t\tkeyName: 'fullyQualifiedEventName',\n\t\toptions: {\n\t\t\tschemas: [\n\t\t\t\t{\n\t\t\t\t\tid: 'eventSignature',\n\t\t\t\t\tname: 'Event Signature',\n\t\t\t\t\tdescription: '',\n\t\t\t\t\tfields: {\n\t\t\t\t\t\tresponsePayload: {\n\t\t\t\t\t\t\ttype: 'raw',\n\t\t\t\t\t\t\toptions: { valueType: 'Schema' },\n\t\t\t\t\t\t},\n\t\t\t\t\t\temitPayload: {\n\t\t\t\t\t\t\ttype: 'raw',\n\t\t\t\t\t\t\toptions: { valueType: 'Schema' },\n\t\t\t\t\t\t},\n\t\t\t\t\t\tlistenPermissionsAny: {\n\t\t\t\t\t\t\ttype: 'text',\n\t\t\t\t\t\t},\n\t\t\t\t\t\temitPermissionsAny: {\n\t\t\t\t\t\t\ttype: 'text',\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tid: 'eventSignature2',\n\t\t\t\t\tname: 'Event Signature2',\n\t\t\t\t\tdescription: '',\n\t\t\t\t\tfields: {\n\t\t\t\t\t\tresponsePayload: {\n\t\t\t\t\t\t\ttype: 'raw',\n\t\t\t\t\t\t\toptions: { valueType: 'Schema' },\n\t\t\t\t\t\t},\n\t\t\t\t\t\temitPayload: {\n\t\t\t\t\t\t\ttype: 'raw',\n\t\t\t\t\t\t\toptions: { valueType: 'Schema' },\n\t\t\t\t\t\t},\n\t\t\t\t\t\tlistenPermissionsAny: {\n\t\t\t\t\t\t\ttype: 'text',\n\t\t\t\t\t\t},\n\t\t\t\t\t\temitPermissionsAny: {\n\t\t\t\t\t\t\ttype: 'text',\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t},\n}\n\nconst mercuryTemplateItem: SchemaTemplateItem = {\n\tnamespace: CORE_NAMESPACE,\n\timportFrom: '@sprucelabs/spruce-core-schemas',\n\tid: nestedMercuryContract.id,\n\tnameCamel: 'mercuryContract',\n\tnamePascal: 'MercuryContract',\n\tnameReadable: nestedMercuryContract.name ?? nestedMercuryContract.id,\n\tisNested: false,\n\tdestinationDir: '#spruce/schemas',\n\tschema: {\n\t\tid: 'mercuryContract',\n\t\tname: 'Mercury Contract',\n\t\tdescription: '',\n\t\tnamespace: CORE_NAMESPACE,\n\t\tversion: '2020_09_01',\n\t\tdynamicFieldSignature: {\n\t\t\ttype: 'schema',\n\t\t\tkeyName: 'fullyQualifiedEventName',\n\t\t\toptions: {\n\t\t\t\tschemaIds: [\n\t\t\t\t\t{\n\t\t\t\t\t\tid: 'eventSignature',\n\t\t\t\t\t\tversion: '2020_09_01',\n\t\t\t\t\t\tnamespace: CORE_NAMESPACE,\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t},\n\t\t},\n\t},\n}\n\nconst eventSignatureTemplateItem: SchemaTemplateItem = {\n\tnamespace: CORE_NAMESPACE,\n\tid: 'eventSignature',\n\timportFrom: '@sprucelabs/spruce-core-schemas',\n\tnameCamel: 'eventSignature',\n\tnamePascal: 'EventSignature',\n\tnameReadable: 'Event Signature',\n\tisNested: true,\n\tdestinationDir: '#spruce/schemas',\n\tschema: {\n\t\tid: 'eventSignature',\n\t\tname: 'Event Signature',\n\t\tdescription: '',\n\t\tversion: '2020_09_01',\n\t\tnamespace: CORE_NAMESPACE,\n\t\tfields: {\n\t\t\tresponsePayload: {\n\t\t\t\ttype: 'raw',\n\t\t\t\toptions: { valueType: 'Schema' },\n\t\t\t},\n\t\t\temitPayload: {\n\t\t\t\ttype: 'raw',\n\t\t\t\toptions: { valueType: 'Schema' },\n\t\t\t},\n\t\t\tlistenPermissionsAny: {\n\t\t\t\ttype: 'text',\n\t\t\t},\n\t\t\temitPermissionsAny: {\n\t\t\t\ttype: 'text',\n\t\t\t},\n\t\t},\n\t},\n}\nconst mercuryTemplateItemArray: SchemaTemplateItem = {\n\tnamespace: CORE_NAMESPACE,\n\tid: nestedMercuryContractArray.id,\n\timportFrom: '@sprucelabs/spruce-core-schemas',\n\tnameCamel: 'mercuryContract',\n\tnamePascal: 'MercuryContract',\n\tnameReadable:\n\t\tnestedMercuryContractArray.name ?? nestedMercuryContractArray.id,\n\tisNested: false,\n\tdestinationDir: '#spruce/schemas',\n\tschema: {\n\t\tid: 'mercuryContract',\n\t\tname: 'Mercury Contract',\n\t\tdescription: '',\n\t\tversion: '2020_09_01',\n\t\tnamespace: CORE_NAMESPACE,\n\t\tdynamicFieldSignature: {\n\t\t\ttype: 'schema',\n\t\t\tkeyName: 'fullyQualifiedEventName',\n\t\t\toptions: {\n\t\t\t\tschemaIds: [\n\t\t\t\t\t{\n\t\t\t\t\t\tid: 'eventSignature',\n\t\t\t\t\t\tversion: '2020_09_01',\n\t\t\t\t\t\tnamespace: CORE_NAMESPACE,\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tid: 'eventSignature2',\n\t\t\t\t\t\tversion: '2020_09_01',\n\t\t\t\t\t\tnamespace: CORE_NAMESPACE,\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t},\n\t\t},\n\t},\n}\n\nconst eventSignatureTemplateItem2: SchemaTemplateItem = {\n\tnamespace: CORE_NAMESPACE,\n\tid: 'eventSignature2',\n\tnameCamel: 'eventSignature2',\n\timportFrom: '@sprucelabs/spruce-core-schemas',\n\tnamePascal: 'EventSignature2',\n\tnameReadable: 'Event Signature2',\n\tisNested: true,\n\tdestinationDir: '#spruce/schemas',\n\tschema: {\n\t\tid: 'eventSignature2',\n\t\tname: 'Event Signature2',\n\t\tdescription: '',\n\t\tversion: '2020_09_01',\n\t\tnamespace: CORE_NAMESPACE,\n\t\tfields: {\n\t\t\tresponsePayload: {\n\t\t\t\ttype: 'raw',\n\t\t\t\toptions: { valueType: 'Schema' },\n\t\t\t},\n\t\t\temitPayload: {\n\t\t\t\ttype: 'raw',\n\t\t\t\toptions: { valueType: 'Schema' },\n\t\t\t},\n\t\t\tlistenPermissionsAny: {\n\t\t\t\ttype: 'text',\n\t\t\t},\n\t\t\temitPermissionsAny: {\n\t\t\t\ttype: 'text',\n\t\t\t},\n\t\t},\n\t},\n}\n\nconst schemaWithManyNestedSchemas: Schema = {\n\tid: 'manyNested',\n\tversion: '2020_09_01',\n\tfields: {\n\t\tfirstLayer: {\n\t\t\ttype: 'schema',\n\t\t\toptions: {\n\t\t\t\tschema: {\n\t\t\t\t\tid: 'firstLayer',\n\t\t\t\t\tfields: {\n\t\t\t\t\t\tsecondLayer: {\n\t\t\t\t\t\t\ttype: 'schema',\n\t\t\t\t\t\t\toptions: {\n\t\t\t\t\t\t\t\tschema: {\n\t\t\t\t\t\t\t\t\tid: 'secondLayer',\n\t\t\t\t\t\t\t\t\tnamespace: 'OutsideNamespace',\n\t\t\t\t\t\t\t\t\tfields: {\n\t\t\t\t\t\t\t\t\t\tlastLayer: {\n\t\t\t\t\t\t\t\t\t\t\ttype: 'schema',\n\t\t\t\t\t\t\t\t\t\t\toptions: {\n\t\t\t\t\t\t\t\t\t\t\t\tschema: {\n\t\t\t\t\t\t\t\t\t\t\t\t\tid: 'lastLayer',\n\t\t\t\t\t\t\t\t\t\t\t\t\tfields: {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tpass: {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\ttype: 'boolean',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\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},\n\t\t\t},\n\t\t},\n\t},\n}\n\nconst manyNestedTemplateItem: SchemaTemplateItem = {\n\tid: 'manyNested',\n\tnamespace: CORE_NAMESPACE,\n\timportFrom: '@sprucelabs/spruce-core-schemas',\n\tschema: {\n\t\tid: 'manyNested',\n\t\tversion: '2020_09_01',\n\t\tnamespace: CORE_NAMESPACE,\n\t\tfields: {\n\t\t\tfirstLayer: {\n\t\t\t\ttype: 'schema',\n\t\t\t\toptions: {\n\t\t\t\t\tschemaIds: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tid: 'firstLayer',\n\t\t\t\t\t\t\tversion: '2020_09_01',\n\t\t\t\t\t\t\tnamespace: CORE_NAMESPACE,\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n\tnameReadable: 'manyNested',\n\tnameCamel: 'manyNested',\n\tnamePascal: 'ManyNested',\n\tisNested: false,\n\tdestinationDir: '#spruce/schemas',\n}\n\nconst firstLayerTemplateItem: SchemaTemplateItem = {\n\tid: 'firstLayer',\n\tnamespace: CORE_NAMESPACE,\n\timportFrom: '@sprucelabs/spruce-core-schemas',\n\tschema: {\n\t\tid: 'firstLayer',\n\t\tversion: '2020_09_01',\n\t\tnamespace: CORE_NAMESPACE,\n\t\tfields: {\n\t\t\tsecondLayer: {\n\t\t\t\ttype: 'schema',\n\t\t\t\toptions: {\n\t\t\t\t\tschemaIds: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tid: 'secondLayer',\n\t\t\t\t\t\t\tnamespace: 'OutsideNamespace',\n\t\t\t\t\t\t\tversion: '2020_09_01',\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n\tnameReadable: 'firstLayer',\n\tnameCamel: 'firstLayer',\n\tnamePascal: 'FirstLayer',\n\tisNested: true,\n\tdestinationDir: '#spruce/schemas',\n}\n\nconst secondLayerTemplateItem: SchemaTemplateItem = {\n\tid: 'secondLayer',\n\tnamespace: 'OutsideNamespace',\n\tschema: {\n\t\tid: 'secondLayer',\n\t\tversion: '2020_09_01',\n\t\tnamespace: 'OutsideNamespace',\n\t\tfields: {\n\t\t\tlastLayer: {\n\t\t\t\ttype: 'schema',\n\t\t\t\toptions: {\n\t\t\t\t\tschemaIds: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tid: 'lastLayer',\n\t\t\t\t\t\t\tversion: '2020_09_01',\n\t\t\t\t\t\t\tnamespace: 'OutsideNamespace',\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n\tnameReadable: 'secondLayer',\n\tnameCamel: 'secondLayer',\n\tnamePascal: 'SecondLayer',\n\tisNested: true,\n\tdestinationDir: '#spruce/schemas',\n}\n\nconst lastLayerTemplateItem: SchemaTemplateItem = {\n\tid: 'lastLayer',\n\tnamespace: 'OutsideNamespace',\n\tschema: {\n\t\tid: 'lastLayer',\n\t\tnamespace: 'OutsideNamespace',\n\t\tversion: '2020_09_01',\n\t\tfields: { pass: { type: 'boolean' } },\n\t},\n\tnameReadable: 'lastLayer',\n\tnameCamel: 'lastLayer',\n\tnamePascal: 'LastLayer',\n\tisNested: true,\n\tdestinationDir: '#spruce/schemas',\n}\n\nconst mercurySchemas = [\n\t{\n\t\tid: 'mercuryContract',\n\t\tname: 'Mercury Contract',\n\t\tdescription: '',\n\t\tfields: {\n\t\t\teventSignatures: {\n\t\t\t\ttype: 'schema',\n\t\t\t\tisRequired: true,\n\t\t\t\tisArray: true,\n\t\t\t\toptions: {\n\t\t\t\t\tschema: {\n\t\t\t\t\t\tid: 'eventSignature',\n\t\t\t\t\t\tname: 'Event Signature',\n\t\t\t\t\t\tdescription: '',\n\t\t\t\t\t\tfields: {\n\t\t\t\t\t\t\tfullyQualifiedEventName: {\n\t\t\t\t\t\t\t\ttype: 'text',\n\t\t\t\t\t\t\t\tisRequired: true,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tresponsePayload: {\n\t\t\t\t\t\t\t\ttype: 'raw',\n\t\t\t\t\t\t\t\toptions: { valueType: 'SpruceSchema.Schema' },\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\temitPayload: {\n\t\t\t\t\t\t\t\ttype: 'raw',\n\t\t\t\t\t\t\t\toptions: { valueType: 'SpruceSchema.Schema' },\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tlistenPermissions: {\n\t\t\t\t\t\t\t\ttype: 'schema',\n\t\t\t\t\t\t\t\tisArray: true,\n\t\t\t\t\t\t\t\toptions: {\n\t\t\t\t\t\t\t\t\tschemaId: { id: 'permission', version: 'v2020_09_01' },\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\temitPermissions: {\n\t\t\t\t\t\t\t\ttype: 'schema',\n\t\t\t\t\t\t\t\tisArray: true,\n\t\t\t\t\t\t\t\toptions: {\n\t\t\t\t\t\t\t\t\tschemaId: { id: 'permission', version: 'v2020_09_01' },\n\t\t\t\t\t\t\t\t},\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},\n\t\t\t},\n\t\t},\n\t\tversion: 'v2020_09_01',\n\t},\n\t{\n\t\tid: 'permissionContract',\n\t\tname: 'Permission Contract',\n\t\tdescription: '',\n\t\tfields: {\n\t\t\trequireAllPermissions: { type: 'boolean', defaultValue: false },\n\t\t\tpermissions: {\n\t\t\t\ttype: 'schema',\n\t\t\t\tisRequired: true,\n\t\t\t\tisArray: true,\n\t\t\t\toptions: {\n\t\t\t\t\tschema: {\n\t\t\t\t\t\tid: 'permission',\n\t\t\t\t\t\tname: 'Permission',\n\t\t\t\t\t\tfields: {\n\t\t\t\t\t\t\tname: {\n\t\t\t\t\t\t\t\ttype: 'text',\n\t\t\t\t\t\t\t\tlabel: 'Permission name',\n\t\t\t\t\t\t\t\tisRequired: true,\n\t\t\t\t\t\t\t\thint: 'Hyphen separated name for this permission, e.g. can-unlock-doors',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\trequireAllStatuses: {\n\t\t\t\t\t\t\t\ttype: 'boolean',\n\t\t\t\t\t\t\t\tlabel: 'Require all statuses',\n\t\t\t\t\t\t\t\tdefaultValue: false,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tdefaults: {\n\t\t\t\t\t\t\t\ttype: 'schema',\n\t\t\t\t\t\t\t\toptions: {\n\t\t\t\t\t\t\t\t\tschema: {\n\t\t\t\t\t\t\t\t\t\tid: 'defaultsByRole',\n\t\t\t\t\t\t\t\t\t\tfields: {\n\t\t\t\t\t\t\t\t\t\t\towner: { type: 'boolean' },\n\t\t\t\t\t\t\t\t\t\t\tgroupManager: { type: 'boolean' },\n\t\t\t\t\t\t\t\t\t\t\tmanager: { type: 'boolean' },\n\t\t\t\t\t\t\t\t\t\t\tteammate: { type: 'boolean' },\n\t\t\t\t\t\t\t\t\t\t\tguest: { type: 'boolean' },\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tcan: {\n\t\t\t\t\t\t\t\ttype: 'schema',\n\t\t\t\t\t\t\t\toptions: {\n\t\t\t\t\t\t\t\t\tschema: {\n\t\t\t\t\t\t\t\t\t\tid: 'statusFlags',\n\t\t\t\t\t\t\t\t\t\tfields: {\n\t\t\t\t\t\t\t\t\t\t\tdefault: { type: 'boolean' },\n\t\t\t\t\t\t\t\t\t\t\tclockedIn: {\n\t\t\t\t\t\t\t\t\t\t\t\tlabel: 'Clocked in',\n\t\t\t\t\t\t\t\t\t\t\t\thint: 'Is the person clocked in and ready to rock?',\n\t\t\t\t\t\t\t\t\t\t\t\ttype: 'boolean',\n\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\tclockedOut: {\n\t\t\t\t\t\t\t\t\t\t\t\tlabel: 'Clocked out',\n\t\t\t\t\t\t\t\t\t\t\t\thint: 'When someone is not working (off the clock).',\n\t\t\t\t\t\t\t\t\t\t\t\ttype: 'boolean',\n\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\tonPrem: {\n\t\t\t\t\t\t\t\t\t\t\t\tlabel: 'On premise',\n\t\t\t\t\t\t\t\t\t\t\t\thint: 'Are they at work (maybe working, maybe visiting).',\n\t\t\t\t\t\t\t\t\t\t\t\ttype: 'boolean',\n\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\toffPrem: {\n\t\t\t\t\t\t\t\t\t\t\t\tlabel: 'Off premise',\n\t\t\t\t\t\t\t\t\t\t\t\thint: \"They aren't at the office or shop.\",\n\t\t\t\t\t\t\t\t\t\t\t\ttype: 'boolean',\n\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\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},\n\t\t\t},\n\t\t},\n\t\tversion: 'v2020_09_01',\n\t},\n]\n\nconst mercuryTemplateItems = [\n\t{\n\t\tid: 'statusFlags',\n\t\timportFrom: '@sprucelabs/spruce-core-schemas',\n\t\tnamespace: CORE_NAMESPACE,\n\t\tschema: {\n\t\t\tversion: 'v2020_09_01',\n\t\t\tid: 'statusFlags',\n\t\t\tnamespace: CORE_NAMESPACE,\n\t\t\tfields: {\n\t\t\t\tdefault: { type: 'boolean' },\n\t\t\t\tclockedIn: {\n\t\t\t\t\tlabel: 'Clocked in',\n\t\t\t\t\thint: 'Is the person clocked in and ready to rock?',\n\t\t\t\t\ttype: 'boolean',\n\t\t\t\t},\n\t\t\t\tclockedOut: {\n\t\t\t\t\tlabel: 'Clocked out',\n\t\t\t\t\thint: 'When someone is not working (off the clock).',\n\t\t\t\t\ttype: 'boolean',\n\t\t\t\t},\n\t\t\t\tonPrem: {\n\t\t\t\t\tlabel: 'On premise',\n\t\t\t\t\thint: 'Are they at work (maybe working, maybe visiting).',\n\t\t\t\t\ttype: 'boolean',\n\t\t\t\t},\n\t\t\t\toffPrem: {\n\t\t\t\t\tlabel: 'Off premise',\n\t\t\t\t\thint: \"They aren't at the office or shop.\",\n\t\t\t\t\ttype: 'boolean',\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tnameReadable: 'statusFlags',\n\t\tnameCamel: 'statusFlags',\n\t\tnamePascal: 'StatusFlags',\n\t\tisNested: true,\n\t\tdestinationDir: '#spruce/schemas',\n\t},\n\t{\n\t\tid: 'defaultsByRole',\n\t\timportFrom: '@sprucelabs/spruce-core-schemas',\n\t\tnamespace: CORE_NAMESPACE,\n\t\tschema: {\n\t\t\tversion: 'v2020_09_01',\n\t\t\tid: 'defaultsByRole',\n\t\t\tnamespace: CORE_NAMESPACE,\n\t\t\tfields: {\n\t\t\t\towner: { type: 'boolean' },\n\t\t\t\tgroupManager: { type: 'boolean' },\n\t\t\t\tmanager: { type: 'boolean' },\n\t\t\t\tteammate: { type: 'boolean' },\n\t\t\t\tguest: { type: 'boolean' },\n\t\t\t},\n\t\t},\n\t\tnameReadable: 'defaultsByRole',\n\t\tnameCamel: 'defaultsByRole',\n\t\tnamePascal: 'DefaultsByRole',\n\t\tisNested: true,\n\t\tdestinationDir: '#spruce/schemas',\n\t},\n\t{\n\t\tid: 'permission',\n\t\tnamespace: CORE_NAMESPACE,\n\t\timportFrom: '@sprucelabs/spruce-core-schemas',\n\t\tschema: {\n\t\t\tversion: 'v2020_09_01',\n\t\t\tid: 'permission',\n\t\t\tnamespace: CORE_NAMESPACE,\n\t\t\tfields: {\n\t\t\t\tname: {\n\t\t\t\t\ttype: 'text',\n\t\t\t\t\tlabel: 'Permission name',\n\t\t\t\t\tisRequired: true,\n\t\t\t\t\thint: 'Hyphen separated name for this permission, e.g. can-unlock-doors',\n\t\t\t\t},\n\t\t\t\trequireAllStatuses: {\n\t\t\t\t\ttype: 'boolean',\n\t\t\t\t\tlabel: 'Require all statuses',\n\t\t\t\t\tdefaultValue: false,\n\t\t\t\t},\n\t\t\t\tdefaults: {\n\t\t\t\t\ttype: 'schema',\n\t\t\t\t\toptions: {\n\t\t\t\t\t\tschemaIds: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tid: 'defaultsByRole',\n\t\t\t\t\t\t\t\tversion: 'v2020_09_01',\n\t\t\t\t\t\t\t\tnamespace: CORE_NAMESPACE,\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},\n\t\t\t\tcan: {\n\t\t\t\t\ttype: 'schema',\n\t\t\t\t\toptions: {\n\t\t\t\t\t\tschemaIds: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tid: 'statusFlags',\n\t\t\t\t\t\t\t\tversion: 'v2020_09_01',\n\t\t\t\t\t\t\t\tnamespace: CORE_NAMESPACE,\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},\n\t\t\t},\n\t\t\tname: 'Permission',\n\t\t},\n\t\tnameReadable: 'Permission',\n\t\tnameCamel: 'permission',\n\t\tnamePascal: 'Permission',\n\t\tisNested: true,\n\t\tdestinationDir: '#spruce/schemas',\n\t},\n\t{\n\t\tid: 'permissionContract',\n\t\tnamespace: CORE_NAMESPACE,\n\t\timportFrom: '@sprucelabs/spruce-core-schemas',\n\t\tschema: {\n\t\t\tid: 'permissionContract',\n\t\t\tname: 'Permission Contract',\n\t\t\tnamespace: CORE_NAMESPACE,\n\t\t\tdescription: '',\n\t\t\tfields: {\n\t\t\t\trequireAllPermissions: { type: 'boolean', defaultValue: false },\n\t\t\t\tpermissions: {\n\t\t\t\t\ttype: 'schema',\n\t\t\t\t\tisRequired: true,\n\t\t\t\t\tisArray: true,\n\t\t\t\t\toptions: {\n\t\t\t\t\t\tschemaIds: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tid: 'permission',\n\t\t\t\t\t\t\t\tversion: 'v2020_09_01',\n\t\t\t\t\t\t\t\tnamespace: CORE_NAMESPACE,\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},\n\t\t\t},\n\t\t\tversion: 'v2020_09_01',\n\t\t},\n\t\tnameReadable: 'Permission Contract',\n\t\tnameCamel: 'permissionContract',\n\t\tnamePascal: 'PermissionContract',\n\t\tisNested: false,\n\t\tdestinationDir: '#spruce/schemas',\n\t},\n\t{\n\t\tid: 'eventSignature',\n\t\tnamespace: CORE_NAMESPACE,\n\t\timportFrom: '@sprucelabs/spruce-core-schemas',\n\t\tschema: {\n\t\t\tversion: 'v2020_09_01',\n\t\t\tid: 'eventSignature',\n\t\t\tname: 'Event Signature',\n\t\t\tnamespace: CORE_NAMESPACE,\n\t\t\tdescription: '',\n\t\t\tfields: {\n\t\t\t\tfullyQualifiedEventName: { type: 'text', isRequired: true },\n\t\t\t\tresponsePayload: {\n\t\t\t\t\ttype: 'raw',\n\t\t\t\t\toptions: { valueType: 'SpruceSchema.Schema' },\n\t\t\t\t},\n\t\t\t\temitPayload: {\n\t\t\t\t\ttype: 'raw',\n\t\t\t\t\toptions: { valueType: 'SpruceSchema.Schema' },\n\t\t\t\t},\n\t\t\t\tlistenPermissions: {\n\t\t\t\t\ttype: 'schema',\n\t\t\t\t\tisArray: true,\n\t\t\t\t\toptions: {\n\t\t\t\t\t\tschemaIds: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tversion: 'v2020_09_01',\n\t\t\t\t\t\t\t\tid: 'permission',\n\t\t\t\t\t\t\t\tnamespace: CORE_NAMESPACE,\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},\n\t\t\t\temitPermissions: {\n\t\t\t\t\ttype: 'schema',\n\t\t\t\t\tisArray: true,\n\t\t\t\t\toptions: {\n\t\t\t\t\t\tschemaIds: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tversion: 'v2020_09_01',\n\t\t\t\t\t\t\t\tid: 'permission',\n\t\t\t\t\t\t\t\tnamespace: CORE_NAMESPACE,\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},\n\t\t\t},\n\t\t},\n\t\tnameReadable: 'Event Signature',\n\t\tnameCamel: 'eventSignature',\n\t\tnamePascal: 'EventSignature',\n\t\tisNested: true,\n\t\tdestinationDir: '#spruce/schemas',\n\t},\n\t{\n\t\tid: 'mercuryContract',\n\t\tnamespace: CORE_NAMESPACE,\n\t\timportFrom: '@sprucelabs/spruce-core-schemas',\n\t\tschema: {\n\t\t\tid: 'mercuryContract',\n\t\t\tname: 'Mercury Contract',\n\t\t\tnamespace: CORE_NAMESPACE,\n\t\t\tdescription: '',\n\t\t\tfields: {\n\t\t\t\teventSignatures: {\n\t\t\t\t\ttype: 'schema',\n\t\t\t\t\tisRequired: true,\n\t\t\t\t\tisArray: true,\n\t\t\t\t\toptions: {\n\t\t\t\t\t\tschemaIds: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tid: 'eventSignature',\n\t\t\t\t\t\t\t\tversion: 'v2020_09_01',\n\t\t\t\t\t\t\t\tnamespace: CORE_NAMESPACE,\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},\n\t\t\t},\n\t\t\tversion: 'v2020_09_01',\n\t\t},\n\t\tnameReadable: 'Mercury Contract',\n\t\tnameCamel: 'mercuryContract',\n\t\tnamePascal: 'MercuryContract',\n\t\tisNested: false,\n\t\tdestinationDir: '#spruce/schemas',\n\t},\n]\n\nconst localSchema = buildSchema({\n\tid: 'localNamespaceSchema',\n\tnamespace: 'Mercury',\n\tfields: {\n\t\tonlyField: {\n\t\t\ttype: 'text',\n\t\t},\n\t},\n})\n\nconst localSchemaTemplateItem: SchemaTemplateItem = {\n\tnamespace: 'Mercury',\n\tid: 'localNamespaceSchema',\n\tnameCamel: 'localNamespaceSchema',\n\tnamePascal: 'LocalNamespaceSchema',\n\tnameReadable: 'localNamespaceSchema',\n\tisNested: false,\n\tdestinationDir: '#spruce/schemas',\n\tschema: localSchema,\n}\n\nexport default class SchemaTemplateItemBuilderTest extends AbstractCliTest {\n\tprivate static itemBuilder: SchemaTemplateItemBuilder\n\n\tprivate static readonly LOCAL_NAMESPACE = 'LocalNamespace'\n\n\tprotected static async beforeEach() {\n\t\tawait super.beforeEach()\n\t\tthis.itemBuilder = new SchemaTemplateItemBuilder(this.LOCAL_NAMESPACE)\n\t}\n\n\t@test()\n\tprotected static canInstantiate() {\n\t\tassert.isTruthy(this.itemBuilder)\n\t}\n\n\t@test()\n\tprotected static hasGenerateFunction() {\n\t\tassert.isFunction(this.itemBuilder.buildTemplateItems)\n\t}\n\n\t@test()\n\tprotected static turnsSingleDefinitionIntoTemplateItem() {\n\t\tconst results = this.itemBuilder.buildTemplateItems(\n\t\t\t{ [CORE_NAMESPACE]: [personV1] },\n\t\t\t'#spruce/schemas'\n\t\t)\n\t\tconst actual = results[0]\n\n\t\tassert.isEqualDeep(actual, personV1TemplateItem)\n\t}\n\n\t@test(\n\t\t'turns 2 definitions into 2 template items',\n\t\t[cowbellV1, personV1],\n\t\t[personV1TemplateItem, cowbellV1TemplateItem]\n\t)\n\t@test(\n\t\t'turns one nested definition into 2 items',\n\t\t[personV2],\n\t\t[vehicleV1TemplateItem, personV2TemplateItem]\n\t)\n\t@test(\n\t\t'handles recursion without looping forever',\n\t\t[personV3],\n\t\t[\n\t\t\tcowbellV1NestedTemplateItem,\n\t\t\tpersonV3TemplateItem,\n\t\t\tcowbellV2NestedTemplateItem,\n\t\t]\n\t)\n\t@test(\n\t\t'handles duplication',\n\t\t[cowbellV1, cowbellV1, cowbellV1],\n\t\t[cowbellV1TemplateItem]\n\t)\n\t@test(\n\t\t'handles resolving by id and version',\n\t\t[personV4, personV3, cowbellV1, cowbellV2],\n\t\t[\n\t\t\tcowbellV2TemplateItem,\n\t\t\tcowbellV1TemplateItem,\n\t\t\tpersonV3TemplateItem,\n\t\t\tpersonV4TemplateItem,\n\t\t]\n\t)\n\t@test(\n\t\t'handles resolving by id and version in different order',\n\t\t[cowbellV1, personV4, personV3, cowbellV2],\n\t\t[\n\t\t\tcowbellV2TemplateItem,\n\t\t\tcowbellV1TemplateItem,\n\t\t\tpersonV3TemplateItem,\n\t\t\tpersonV4TemplateItem,\n\t\t]\n\t)\n\t@test(\n\t\t'handles nested schema in dynamic key signature',\n\t\t[nestedMercuryContract],\n\t\t[eventSignatureTemplateItem, mercuryTemplateItem]\n\t)\n\t@test(\n\t\t'handles nested schemas in dynamic key signature',\n\t\t[nestedMercuryContractArray],\n\t\t[\n\t\t\teventSignatureTemplateItem2,\n\t\t\teventSignatureTemplateItem,\n\t\t\tmercuryTemplateItemArray,\n\t\t]\n\t)\n\t@test(\n\t\t'handles many layers of nested schemas',\n\t\t[schemaWithManyNestedSchemas],\n\t\t[\n\t\t\tlastLayerTemplateItem,\n\t\t\tsecondLayerTemplateItem,\n\t\t\tfirstLayerTemplateItem,\n\t\t\tmanyNestedTemplateItem,\n\t\t]\n\t)\n\t@test('can import event contracts', mercurySchemas, mercuryTemplateItems)\n\t@test(\n\t\t'import from not set if matching local namespace',\n\t\t[localSchema],\n\t\t[localSchemaTemplateItem],\n\t\t'Mercury'\n\t)\n\tprotected static generationTests(\n\t\tschemas: Schema[],\n\t\texpected: SchemaTemplateItem[],\n\t\tlocalNamespace = this.LOCAL_NAMESPACE\n\t) {\n\t\tthis.itemBuilder = new SchemaTemplateItemBuilder(localNamespace)\n\n\t\tconst results = this.itemBuilder.buildTemplateItems({\n\t\t\t[CORE_NAMESPACE]: schemas,\n\t\t})\n\n\t\tassert.isLength(results, expected.length)\n\n\t\texpected.forEach((expected, idx) => {\n\t\t\tconst match = results[idx]\n\t\t\tassert.isTruthy(match, `Did not find a template item for ${expected.id}`)\n\t\t\tassert.isEqualDeep(match, expected)\n\t\t})\n\t}\n\n\t@test()\n\tprotected static setsImports() {\n\t\tconst results = this.itemBuilder.buildTemplateItems(\n\t\t\t{\n\t\t\t\t[this.LOCAL_NAMESPACE]: [\n\t\t\t\t\tbuildSchema({\n\t\t\t\t\t\tid: 'local',\n\t\t\t\t\t\timportsWhenLocal: ['import local from \"local\"'],\n\t\t\t\t\t\timportsWhenRemote: ['import remote from \"remote\"'],\n\t\t\t\t\t\tfields: {\n\t\t\t\t\t\t\tfirstName: { type: 'text' },\n\t\t\t\t\t\t},\n\t\t\t\t\t}),\n\t\t\t\t],\n\t\t\t},\n\t\t\t'#spruce/schemas'\n\t\t)\n\n\t\tassert.isEqualDeep(results, [\n\t\t\t{\n\t\t\t\tid: 'local',\n\t\t\t\tnamespace: 'LocalNamespace',\n\t\t\t\tschema: {\n\t\t\t\t\t//@ts-ignore\n\t\t\t\t\tid: 'local',\n\t\t\t\t\tnamespace: 'LocalNamespace',\n\t\t\t\t\timportsWhenLocal: [`import local from \"local\"`],\n\t\t\t\t\timportsWhenRemote: [`import remote from \"remote\"`],\n\t\t\t\t\tfields: {\n\t\t\t\t\t\tfirstName: {\n\t\t\t\t\t\t\ttype: 'text',\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tnameReadable: 'local',\n\t\t\t\tnameCamel: 'local',\n\t\t\t\tnamePascal: 'Local',\n\t\t\t\tisNested: false,\n\t\t\t\tdestinationDir: '#spruce/schemas',\n\t\t\t\timports: [`import local from \"local\"`],\n\t\t\t},\n\t\t])\n\t}\n\n\t@test()\n\tprotected static bringsImportsFromRemoteFromRelatedSchemas() {\n\t\tconst results = this.itemBuilder.buildTemplateItems(\n\t\t\t{\n\t\t\t\t[this.LOCAL_NAMESPACE]: [\n\t\t\t\t\tbuildSchema({\n\t\t\t\t\t\tid: 'local',\n\t\t\t\t\t\timportsWhenLocal: ['import local from \"local\"'],\n\t\t\t\t\t\timportsWhenRemote: ['import remote from \"remote\"'],\n\t\t\t\t\t\tfields: {\n\t\t\t\t\t\t\tfirstName: { type: 'text' },\n\t\t\t\t\t\t\tremote: {\n\t\t\t\t\t\t\t\ttype: 'schema',\n\t\t\t\t\t\t\t\toptions: {\n\t\t\t\t\t\t\t\t\tschema: { id: 'remote', namespace: 'AnotherNamespace' },\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tlocal: {\n\t\t\t\t\t\t\t\ttype: 'schema',\n\t\t\t\t\t\t\t\toptions: {\n\t\t\t\t\t\t\t\t\tschema: { id: 'local', namespace: this.LOCAL_NAMESPACE },\n\t\t\t\t\t\t\t\t},\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\tbuildSchema({\n\t\t\t\t\t\tid: 'local2',\n\t\t\t\t\t\timportsWhenLocal: ['import local2 from \"local2\"'],\n\t\t\t\t\t\timportsWhenRemote: ['import remote2 from \"remote2\"'],\n\t\t\t\t\t\tfields: {\n\t\t\t\t\t\t\tfirstName: { type: 'text' },\n\t\t\t\t\t\t\tremote: {\n\t\t\t\t\t\t\t\ttype: 'schema',\n\t\t\t\t\t\t\t\toptions: {\n\t\t\t\t\t\t\t\t\tschema: { id: 'remote', namespace: 'AnotherNamespace' },\n\t\t\t\t\t\t\t\t},\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],\n\t\t\t\tAnotherNamespace: [\n\t\t\t\t\tbuildSchema({\n\t\t\t\t\t\tid: 'remote',\n\t\t\t\t\t\timportsWhenLocal: ['import local2 from \"local2\"'],\n\t\t\t\t\t\timportsWhenRemote: ['import remote3 from \"remote3\"'],\n\t\t\t\t\t\tfields: {\n\t\t\t\t\t\t\tfirstName: { type: 'text' },\n\t\t\t\t\t\t},\n\t\t\t\t\t}),\n\t\t\t\t],\n\t\t\t},\n\t\t\t'#spruce/schemas'\n\t\t)\n\n\t\tassert.isEqualDeep(results, [\n\t\t\t{\n\t\t\t\tid: 'remote',\n\t\t\t\tnamespace: 'AnotherNamespace',\n\t\t\t\tschema: {\n\t\t\t\t\tid: 'remote',\n\t\t\t\t\tnamespace: 'AnotherNamespace',\n\t\t\t\t\timportsWhenLocal: ['import local2 from \"local2\"'],\n\t\t\t\t\timportsWhenRemote: ['import remote3 from \"remote3\"'],\n\t\t\t\t\tfields: { firstName: { type: 'text' } },\n\t\t\t\t},\n\t\t\t\tnameReadable: 'remote',\n\t\t\t\tnameCamel: 'remote',\n\t\t\t\tnamePascal: 'Remote',\n\t\t\t\tisNested: false,\n\t\t\t\tdestinationDir: '#spruce/schemas',\n\t\t\t\timports: ['import remote3 from \"remote3\"'],\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: 'local2',\n\t\t\t\tnamespace: 'LocalNamespace',\n\t\t\t\tschema: {\n\t\t\t\t\tnamespace: 'LocalNamespace',\n\t\t\t\t\tid: 'local2',\n\t\t\t\t\timportsWhenLocal: ['import local2 from \"local2\"'],\n\t\t\t\t\timportsWhenRemote: ['import remote2 from \"remote2\"'],\n\t\t\t\t\tfields: {\n\t\t\t\t\t\tfirstName: { type: 'text' },\n\t\t\t\t\t\tremote: {\n\t\t\t\t\t\t\ttype: 'schema',\n\t\t\t\t\t\t\toptions: {\n\t\t\t\t\t\t\t\tschemaIds: [{ id: 'remote', namespace: 'AnotherNamespace' }],\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},\n\t\t\t\tnameReadable: 'local2',\n\t\t\t\tnameCamel: 'local2',\n\t\t\t\tnamePascal: 'Local2',\n\t\t\t\tisNested: false,\n\t\t\t\tdestinationDir: '#spruce/schemas',\n\t\t\t\timports: [\n\t\t\t\t\t'import local2 from \"local2\"',\n\t\t\t\t\t'import remote3 from \"remote3\"',\n\t\t\t\t],\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: 'local',\n\t\t\t\tnamespace: 'LocalNamespace',\n\t\t\t\tschema: {\n\t\t\t\t\tid: 'local',\n\t\t\t\t\tnamespace: 'LocalNamespace',\n\t\t\t\t\timportsWhenLocal: ['import local from \"local\"'],\n\t\t\t\t\timportsWhenRemote: ['import remote from \"remote\"'],\n\t\t\t\t\tfields: {\n\t\t\t\t\t\tfirstName: { type: 'text' },\n\t\t\t\t\t\tremote: {\n\t\t\t\t\t\t\ttype: 'schema',\n\t\t\t\t\t\t\toptions: {\n\t\t\t\t\t\t\t\tschemaIds: [{ id: 'remote', namespace: 'AnotherNamespace' }],\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tlocal: {\n\t\t\t\t\t\t\ttype: 'schema',\n\t\t\t\t\t\t\toptions: {\n\t\t\t\t\t\t\t\tschemaIds: [{ id: 'local', namespace: 'LocalNamespace' }],\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},\n\t\t\t\tnameReadable: 'local',\n\t\t\t\tnameCamel: 'local',\n\t\t\t\tnamePascal: 'Local',\n\t\t\t\tisNested: false,\n\t\t\t\tdestinationDir: '#spruce/schemas',\n\t\t\t\timports: ['import local from \"local\"', 'import remote3 from \"remote3\"'],\n\t\t\t},\n\t\t])\n\t}\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"SchemaTemplateItemBuilder.test.js","names":["_schema","require","_spruceSkillUtils","_testUtils","_SchemaTemplateItemBuilder","_interopRequireDefault","_AbstractCliTest2","_nestedMercuryContrac","_nestedMercuryContrac2","_dec","_dec2","_dec3","_dec4","_dec5","_dec6","_dec7","_dec8","_dec9","_dec10","_dec11","_dec12","_dec13","_dec14","_dec15","_dec16","_class","_SchemaTemplateItemBuilderTest","_callSuper","t","o","e","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","apply","Boolean","prototype","valueOf","call","ownKeys","r","Object","keys","getOwnPropertySymbols","filter","getOwnPropertyDescriptor","enumerable","push","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","cowbellV1","id","version","name","fields","radius","type","cowbellV1TemplateItem","namespace","CORE_NAMESPACE","importFrom","nameCamel","namePascal","nameReadable","schema","isNested","destinationDir","cowbellV1NestedTemplateItem","cowbellV2","owner","options","schemaId","cowbellV2TemplateItem","schemaIds","cowbellV2NestedTemplateItem","personV1","personV1TemplateItem","personV2","favoriteVehicle","make","personV2TemplateItem","personV3","relatedField","schemas","personV3TemplateItem","vehicleV1TemplateItem","personV4","importsWhenLocal","importsWhenRemote","cowbells","personV4TemplateItem","imports","nestedMercuryContract","description","dynamicFieldSignature","keyName","responsePayload","valueType","emitPayload","listenPermissionsAny","emitPermissionsAny","nestedMercuryContractArray","mercuryTemplateItem","eventSignatureTemplateItem","mercuryTemplateItemArray","eventSignatureTemplateItem2","schemaWithManyNestedSchemas","firstLayer","secondLayer","lastLayer","pass","manyNestedTemplateItem","firstLayerTemplateItem","secondLayerTemplateItem","lastLayerTemplateItem","mercurySchemas","eventSignatures","isRequired","isArray","fullyQualifiedEventName","listenPermissions","emitPermissions","requireAllPermissions","defaultValue","permissions","label","hint","requireAllStatuses","defaults","groupManager","manager","teammate","guest","can","clockedIn","clockedOut","onPrem","offPrem","mercuryTemplateItems","localSchema","buildSchema","onlyField","localSchemaTemplateItem","SchemaTemplateItemBuilderTest","exports","test","_AbstractCliTest","_classCallCheck2","_inherits2","_createClass2","key","value","_beforeEach","_asyncToGenerator2","_regenerator","mark","_callee","wrap","_callee$","_context","prev","next","_get2","itemBuilder","SchemaTemplateItemBuilder","LOCAL_NAMESPACE","stop","beforeEach","canInstantiate","assert","isTruthy","hasGenerateFunction","isFunction","buildTemplateItems","turnsSingleDefinitionIntoTemplateItem","results","actual","isEqualDeep","generationTests","expected","localNamespace","undefined","isLength","idx","match","concat","setsImports","firstName","bringsImportsFromRemoteFromRelatedSchemas","remote","local","AbstractCliTest","_applyDecoratedDescriptor2"],"sources":["../../../src/__tests__/implementation/SchemaTemplateItemBuilder.test.ts"],"sourcesContent":["import { buildSchema, Schema, SchemaTemplateItem } from '@sprucelabs/schema'\nimport { CORE_NAMESPACE } from '@sprucelabs/spruce-skill-utils'\nimport { test, assert } from '@sprucelabs/test-utils'\nimport SchemaTemplateItemBuilder from '../../templateItemBuilders/SchemaTemplateItemBuilder'\nimport AbstractCliTest from '../../tests/AbstractCliTest'\n\nconst cowbellV1: Schema = {\n\tid: 'cowbell',\n\tversion: '2020_06_01',\n\tname: 'Cowbell test',\n\tfields: {\n\t\tradius: {\n\t\t\ttype: 'number',\n\t\t},\n\t},\n}\n\nconst cowbellV1TemplateItem: SchemaTemplateItem = {\n\tnamespace: CORE_NAMESPACE,\n\tid: cowbellV1.id,\n\timportFrom: '@sprucelabs/spruce-core-schemas',\n\tnameCamel: 'cowbell',\n\tnamePascal: 'Cowbell',\n\tnameReadable: 'Cowbell test',\n\tschema: { ...cowbellV1, namespace: CORE_NAMESPACE },\n\tisNested: false,\n\tdestinationDir: '#spruce/schemas',\n}\n\nconst cowbellV1NestedTemplateItem: SchemaTemplateItem = {\n\tnamespace: CORE_NAMESPACE,\n\tid: cowbellV1.id,\n\timportFrom: '@sprucelabs/spruce-core-schemas',\n\tnameCamel: 'cowbell',\n\tnamePascal: 'Cowbell',\n\tnameReadable: 'Cowbell test',\n\tschema: { ...cowbellV1, namespace: CORE_NAMESPACE },\n\tisNested: true,\n\tdestinationDir: '#spruce/schemas',\n}\n\nconst cowbellV2: Schema = {\n\tid: 'cowbell',\n\tversion: '2020_06_02',\n\tname: 'Cowbell test two!',\n\tfields: {\n\t\tradius: {\n\t\t\ttype: 'number',\n\t\t},\n\t\towner: {\n\t\t\ttype: 'schema',\n\t\t\toptions: {\n\t\t\t\tschemaId: { id: 'person', version: '2020_06_03' },\n\t\t\t},\n\t\t},\n\t},\n}\n\nconst cowbellV2TemplateItem: SchemaTemplateItem = {\n\tnamespace: CORE_NAMESPACE,\n\tid: cowbellV2.id,\n\tnameCamel: 'cowbell',\n\tnamePascal: 'Cowbell',\n\tnameReadable: 'Cowbell test two!',\n\tisNested: false,\n\tdestinationDir: '#spruce/schemas',\n\timportFrom: '@sprucelabs/spruce-core-schemas',\n\tschema: {\n\t\tid: 'cowbell',\n\t\tversion: '2020_06_02',\n\t\tname: 'Cowbell test two!',\n\t\tnamespace: CORE_NAMESPACE,\n\t\tfields: {\n\t\t\tradius: {\n\t\t\t\ttype: 'number',\n\t\t\t},\n\t\t\towner: {\n\t\t\t\ttype: 'schema',\n\t\t\t\toptions: {\n\t\t\t\t\tschemaIds: [\n\t\t\t\t\t\t{ id: 'person', version: '2020_06_03', namespace: CORE_NAMESPACE },\n\t\t\t\t\t],\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n}\n\nconst cowbellV2NestedTemplateItem: SchemaTemplateItem = {\n\tnamespace: CORE_NAMESPACE,\n\tid: cowbellV2.id,\n\tnameCamel: 'cowbell',\n\tnamePascal: 'Cowbell',\n\tnameReadable: 'Cowbell test two!',\n\tisNested: true,\n\tdestinationDir: '#spruce/schemas',\n\timportFrom: '@sprucelabs/spruce-core-schemas',\n\tschema: {\n\t\tid: 'cowbell',\n\t\tversion: '2020_06_02',\n\t\tname: 'Cowbell test two!',\n\t\tnamespace: CORE_NAMESPACE,\n\t\tfields: {\n\t\t\tradius: {\n\t\t\t\ttype: 'number',\n\t\t\t},\n\t\t\towner: {\n\t\t\t\ttype: 'schema',\n\t\t\t\toptions: {\n\t\t\t\t\tschemaIds: [\n\t\t\t\t\t\t{ id: 'person', version: '2020_06_03', namespace: CORE_NAMESPACE },\n\t\t\t\t\t],\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n}\n\nconst personV1: Schema = {\n\tid: 'person',\n\tversion: '2020_06_01',\n\tname: 'Person test',\n\tfields: {\n\t\tname: {\n\t\t\ttype: 'text',\n\t\t},\n\t},\n}\n\nconst personV1TemplateItem: SchemaTemplateItem = {\n\tnamespace: CORE_NAMESPACE,\n\timportFrom: '@sprucelabs/spruce-core-schemas',\n\tid: personV1.id,\n\tnameCamel: 'person',\n\tnamePascal: 'Person',\n\tnameReadable: 'Person test',\n\tschema: { ...personV1, namespace: CORE_NAMESPACE },\n\tisNested: false,\n\tdestinationDir: '#spruce/schemas',\n}\n\nconst personV2: Schema = {\n\tid: 'person',\n\tversion: '2020_06_01',\n\tname: 'Person version 2',\n\tfields: {\n\t\tname: {\n\t\t\ttype: 'text',\n\t\t},\n\t\tfavoriteVehicle: {\n\t\t\ttype: 'schema',\n\t\t\toptions: {\n\t\t\t\tschema: {\n\t\t\t\t\tid: 'vehicle',\n\t\t\t\t\tname: 'Vehicle v1',\n\t\t\t\t\tversion: '2020_06_01',\n\t\t\t\t\tfields: {\n\t\t\t\t\t\tmake: {\n\t\t\t\t\t\t\ttype: 'text',\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n}\n\nconst personV2TemplateItem: SchemaTemplateItem = {\n\tnamespace: CORE_NAMESPACE,\n\tid: personV1.id,\n\timportFrom: '@sprucelabs/spruce-core-schemas',\n\tnameCamel: 'person',\n\tnamePascal: 'Person',\n\tnameReadable: 'Person version 2',\n\tisNested: false,\n\tdestinationDir: '#spruce/schemas',\n\tschema: {\n\t\tid: 'person',\n\t\tversion: '2020_06_01',\n\t\tname: 'Person version 2',\n\t\tnamespace: CORE_NAMESPACE,\n\t\tfields: {\n\t\t\tname: {\n\t\t\t\ttype: 'text',\n\t\t\t},\n\t\t\tfavoriteVehicle: {\n\t\t\t\ttype: 'schema',\n\t\t\t\toptions: {\n\t\t\t\t\tschemaIds: [\n\t\t\t\t\t\t{ id: 'vehicle', version: '2020_06_01', namespace: CORE_NAMESPACE },\n\t\t\t\t\t],\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n}\n\nconst personV3: Schema = {\n\tid: 'person',\n\tversion: '2020_06_03',\n\tname: 'Person test the 3rd',\n\tfields: {\n\t\trelatedField: {\n\t\t\ttype: 'schema',\n\t\t\toptions: {\n\t\t\t\tschemas: [cowbellV1, cowbellV2],\n\t\t\t},\n\t\t},\n\t},\n}\n\nconst personV3TemplateItem: SchemaTemplateItem = {\n\tnamespace: CORE_NAMESPACE,\n\timportFrom: '@sprucelabs/spruce-core-schemas',\n\tid: personV3.id,\n\tnameCamel: 'person',\n\tnamePascal: 'Person',\n\tnameReadable: 'Person test the 3rd',\n\tisNested: false,\n\tdestinationDir: '#spruce/schemas',\n\tschema: {\n\t\tid: 'person',\n\t\tversion: '2020_06_03',\n\t\tname: 'Person test the 3rd',\n\t\tnamespace: CORE_NAMESPACE,\n\t\tfields: {\n\t\t\trelatedField: {\n\t\t\t\ttype: 'schema',\n\t\t\t\toptions: {\n\t\t\t\t\tschemaIds: [\n\t\t\t\t\t\t{ id: 'cowbell', version: '2020_06_01', namespace: CORE_NAMESPACE },\n\t\t\t\t\t\t{ id: 'cowbell', version: '2020_06_02', namespace: CORE_NAMESPACE },\n\t\t\t\t\t],\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n}\n\nconst vehicleV1TemplateItem: SchemaTemplateItem = {\n\tnamespace: CORE_NAMESPACE,\n\timportFrom: '@sprucelabs/spruce-core-schemas',\n\tid: 'vehicle',\n\tnameCamel: 'vehicle',\n\tnamePascal: 'Vehicle',\n\tnameReadable: 'Vehicle v1',\n\tisNested: true,\n\tdestinationDir: '#spruce/schemas',\n\tschema: {\n\t\tid: 'vehicle',\n\t\tname: 'Vehicle v1',\n\t\tnamespace: CORE_NAMESPACE,\n\t\tversion: '2020_06_01',\n\t\tfields: {\n\t\t\tmake: {\n\t\t\t\ttype: 'text',\n\t\t\t},\n\t\t},\n\t},\n}\n\nconst personV4: Schema = {\n\tid: 'person',\n\tversion: '2020_06_04',\n\tname: 'Person test the last',\n\timportsWhenLocal: [\"import BaseParent from '../../file'\"],\n\timportsWhenRemote: [\n\t\t\"import BaseParent from '@sprucelabs/spruce-core-schemas'\",\n\t],\n\tfields: {\n\t\tcowbells: {\n\t\t\ttype: 'schema',\n\t\t\toptions: {\n\t\t\t\tschemaIds: [\n\t\t\t\t\t{ id: 'cowbell', version: '2020_06_01' },\n\t\t\t\t\t{ id: 'cowbell', version: '2020_06_02' },\n\t\t\t\t],\n\t\t\t},\n\t\t},\n\t},\n}\n\nconst personV4TemplateItem: SchemaTemplateItem = {\n\tnamespace: CORE_NAMESPACE,\n\timportFrom: '@sprucelabs/spruce-core-schemas',\n\tid: personV4.id,\n\tnameCamel: 'person',\n\tnamePascal: 'Person',\n\tnameReadable: 'Person test the last',\n\tschema: {\n\t\tid: 'person',\n\t\tversion: '2020_06_04',\n\t\tname: 'Person test the last',\n\t\tnamespace: CORE_NAMESPACE,\n\t\timportsWhenLocal: [\"import BaseParent from '../../file'\"],\n\t\timportsWhenRemote: [\n\t\t\t\"import BaseParent from '@sprucelabs/spruce-core-schemas'\",\n\t\t],\n\t\tfields: {\n\t\t\tcowbells: {\n\t\t\t\ttype: 'schema',\n\t\t\t\toptions: {\n\t\t\t\t\tschemaIds: [\n\t\t\t\t\t\t{ id: 'cowbell', version: '2020_06_01', namespace: CORE_NAMESPACE },\n\t\t\t\t\t\t{ id: 'cowbell', version: '2020_06_02', namespace: CORE_NAMESPACE },\n\t\t\t\t\t],\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n\tisNested: false,\n\timports: [\"import BaseParent from '@sprucelabs/spruce-core-schemas'\"],\n\tdestinationDir: '#spruce/schemas',\n}\n\nconst nestedMercuryContract: Schema = {\n\tid: 'mercuryContract',\n\tname: 'Mercury Contract',\n\tdescription: '',\n\tversion: '2020_09_01',\n\tdynamicFieldSignature: {\n\t\ttype: 'schema',\n\t\tkeyName: 'fullyQualifiedEventName',\n\t\toptions: {\n\t\t\tschema: {\n\t\t\t\tid: 'eventSignature',\n\t\t\t\tname: 'Event Signature',\n\t\t\t\tdescription: '',\n\t\t\t\tfields: {\n\t\t\t\t\tresponsePayload: {\n\t\t\t\t\t\ttype: 'raw',\n\t\t\t\t\t\toptions: { valueType: 'Schema' },\n\t\t\t\t\t},\n\t\t\t\t\temitPayload: {\n\t\t\t\t\t\ttype: 'raw',\n\t\t\t\t\t\toptions: { valueType: 'Schema' },\n\t\t\t\t\t},\n\t\t\t\t\tlistenPermissionsAny: {\n\t\t\t\t\t\ttype: 'text',\n\t\t\t\t\t},\n\t\t\t\t\temitPermissionsAny: {\n\t\t\t\t\t\ttype: 'text',\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n}\n\nconst nestedMercuryContractArray: Schema = {\n\tid: 'mercuryContract',\n\tname: 'Mercury Contract',\n\tdescription: '',\n\tversion: '2020_09_01',\n\n\tdynamicFieldSignature: {\n\t\ttype: 'schema',\n\t\tkeyName: 'fullyQualifiedEventName',\n\t\toptions: {\n\t\t\tschemas: [\n\t\t\t\t{\n\t\t\t\t\tid: 'eventSignature',\n\t\t\t\t\tname: 'Event Signature',\n\t\t\t\t\tdescription: '',\n\t\t\t\t\tfields: {\n\t\t\t\t\t\tresponsePayload: {\n\t\t\t\t\t\t\ttype: 'raw',\n\t\t\t\t\t\t\toptions: { valueType: 'Schema' },\n\t\t\t\t\t\t},\n\t\t\t\t\t\temitPayload: {\n\t\t\t\t\t\t\ttype: 'raw',\n\t\t\t\t\t\t\toptions: { valueType: 'Schema' },\n\t\t\t\t\t\t},\n\t\t\t\t\t\tlistenPermissionsAny: {\n\t\t\t\t\t\t\ttype: 'text',\n\t\t\t\t\t\t},\n\t\t\t\t\t\temitPermissionsAny: {\n\t\t\t\t\t\t\ttype: 'text',\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tid: 'eventSignature2',\n\t\t\t\t\tname: 'Event Signature2',\n\t\t\t\t\tdescription: '',\n\t\t\t\t\tfields: {\n\t\t\t\t\t\tresponsePayload: {\n\t\t\t\t\t\t\ttype: 'raw',\n\t\t\t\t\t\t\toptions: { valueType: 'Schema' },\n\t\t\t\t\t\t},\n\t\t\t\t\t\temitPayload: {\n\t\t\t\t\t\t\ttype: 'raw',\n\t\t\t\t\t\t\toptions: { valueType: 'Schema' },\n\t\t\t\t\t\t},\n\t\t\t\t\t\tlistenPermissionsAny: {\n\t\t\t\t\t\t\ttype: 'text',\n\t\t\t\t\t\t},\n\t\t\t\t\t\temitPermissionsAny: {\n\t\t\t\t\t\t\ttype: 'text',\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t},\n}\n\nconst mercuryTemplateItem: SchemaTemplateItem = {\n\tnamespace: CORE_NAMESPACE,\n\timportFrom: '@sprucelabs/spruce-core-schemas',\n\tid: nestedMercuryContract.id,\n\tnameCamel: 'mercuryContract',\n\tnamePascal: 'MercuryContract',\n\tnameReadable: nestedMercuryContract.name ?? nestedMercuryContract.id,\n\tisNested: false,\n\tdestinationDir: '#spruce/schemas',\n\tschema: {\n\t\tid: 'mercuryContract',\n\t\tname: 'Mercury Contract',\n\t\tdescription: '',\n\t\tnamespace: CORE_NAMESPACE,\n\t\tversion: '2020_09_01',\n\t\tdynamicFieldSignature: {\n\t\t\ttype: 'schema',\n\t\t\tkeyName: 'fullyQualifiedEventName',\n\t\t\toptions: {\n\t\t\t\tschemaIds: [\n\t\t\t\t\t{\n\t\t\t\t\t\tid: 'eventSignature',\n\t\t\t\t\t\tversion: '2020_09_01',\n\t\t\t\t\t\tnamespace: CORE_NAMESPACE,\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t},\n\t\t},\n\t},\n}\n\nconst eventSignatureTemplateItem: SchemaTemplateItem = {\n\tnamespace: CORE_NAMESPACE,\n\tid: 'eventSignature',\n\timportFrom: '@sprucelabs/spruce-core-schemas',\n\tnameCamel: 'eventSignature',\n\tnamePascal: 'EventSignature',\n\tnameReadable: 'Event Signature',\n\tisNested: true,\n\tdestinationDir: '#spruce/schemas',\n\tschema: {\n\t\tid: 'eventSignature',\n\t\tname: 'Event Signature',\n\t\tdescription: '',\n\t\tversion: '2020_09_01',\n\t\tnamespace: CORE_NAMESPACE,\n\t\tfields: {\n\t\t\tresponsePayload: {\n\t\t\t\ttype: 'raw',\n\t\t\t\toptions: { valueType: 'Schema' },\n\t\t\t},\n\t\t\temitPayload: {\n\t\t\t\ttype: 'raw',\n\t\t\t\toptions: { valueType: 'Schema' },\n\t\t\t},\n\t\t\tlistenPermissionsAny: {\n\t\t\t\ttype: 'text',\n\t\t\t},\n\t\t\temitPermissionsAny: {\n\t\t\t\ttype: 'text',\n\t\t\t},\n\t\t},\n\t},\n}\nconst mercuryTemplateItemArray: SchemaTemplateItem = {\n\tnamespace: CORE_NAMESPACE,\n\tid: nestedMercuryContractArray.id,\n\timportFrom: '@sprucelabs/spruce-core-schemas',\n\tnameCamel: 'mercuryContract',\n\tnamePascal: 'MercuryContract',\n\tnameReadable:\n\t\tnestedMercuryContractArray.name ?? nestedMercuryContractArray.id,\n\tisNested: false,\n\tdestinationDir: '#spruce/schemas',\n\tschema: {\n\t\tid: 'mercuryContract',\n\t\tname: 'Mercury Contract',\n\t\tdescription: '',\n\t\tversion: '2020_09_01',\n\t\tnamespace: CORE_NAMESPACE,\n\t\tdynamicFieldSignature: {\n\t\t\ttype: 'schema',\n\t\t\tkeyName: 'fullyQualifiedEventName',\n\t\t\toptions: {\n\t\t\t\tschemaIds: [\n\t\t\t\t\t{\n\t\t\t\t\t\tid: 'eventSignature',\n\t\t\t\t\t\tversion: '2020_09_01',\n\t\t\t\t\t\tnamespace: CORE_NAMESPACE,\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tid: 'eventSignature2',\n\t\t\t\t\t\tversion: '2020_09_01',\n\t\t\t\t\t\tnamespace: CORE_NAMESPACE,\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t},\n\t\t},\n\t},\n}\n\nconst eventSignatureTemplateItem2: SchemaTemplateItem = {\n\tnamespace: CORE_NAMESPACE,\n\tid: 'eventSignature2',\n\tnameCamel: 'eventSignature2',\n\timportFrom: '@sprucelabs/spruce-core-schemas',\n\tnamePascal: 'EventSignature2',\n\tnameReadable: 'Event Signature2',\n\tisNested: true,\n\tdestinationDir: '#spruce/schemas',\n\tschema: {\n\t\tid: 'eventSignature2',\n\t\tname: 'Event Signature2',\n\t\tdescription: '',\n\t\tversion: '2020_09_01',\n\t\tnamespace: CORE_NAMESPACE,\n\t\tfields: {\n\t\t\tresponsePayload: {\n\t\t\t\ttype: 'raw',\n\t\t\t\toptions: { valueType: 'Schema' },\n\t\t\t},\n\t\t\temitPayload: {\n\t\t\t\ttype: 'raw',\n\t\t\t\toptions: { valueType: 'Schema' },\n\t\t\t},\n\t\t\tlistenPermissionsAny: {\n\t\t\t\ttype: 'text',\n\t\t\t},\n\t\t\temitPermissionsAny: {\n\t\t\t\ttype: 'text',\n\t\t\t},\n\t\t},\n\t},\n}\n\nconst schemaWithManyNestedSchemas: Schema = {\n\tid: 'manyNested',\n\tversion: '2020_09_01',\n\tfields: {\n\t\tfirstLayer: {\n\t\t\ttype: 'schema',\n\t\t\toptions: {\n\t\t\t\tschema: {\n\t\t\t\t\tid: 'firstLayer',\n\t\t\t\t\tfields: {\n\t\t\t\t\t\tsecondLayer: {\n\t\t\t\t\t\t\ttype: 'schema',\n\t\t\t\t\t\t\toptions: {\n\t\t\t\t\t\t\t\tschema: {\n\t\t\t\t\t\t\t\t\tid: 'secondLayer',\n\t\t\t\t\t\t\t\t\tnamespace: 'OutsideNamespace',\n\t\t\t\t\t\t\t\t\tfields: {\n\t\t\t\t\t\t\t\t\t\tlastLayer: {\n\t\t\t\t\t\t\t\t\t\t\ttype: 'schema',\n\t\t\t\t\t\t\t\t\t\t\toptions: {\n\t\t\t\t\t\t\t\t\t\t\t\tschema: {\n\t\t\t\t\t\t\t\t\t\t\t\t\tid: 'lastLayer',\n\t\t\t\t\t\t\t\t\t\t\t\t\tfields: {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tpass: {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\ttype: 'boolean',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\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},\n\t\t\t},\n\t\t},\n\t},\n}\n\nconst manyNestedTemplateItem: SchemaTemplateItem = {\n\tid: 'manyNested',\n\tnamespace: CORE_NAMESPACE,\n\timportFrom: '@sprucelabs/spruce-core-schemas',\n\tschema: {\n\t\tid: 'manyNested',\n\t\tversion: '2020_09_01',\n\t\tnamespace: CORE_NAMESPACE,\n\t\tfields: {\n\t\t\tfirstLayer: {\n\t\t\t\ttype: 'schema',\n\t\t\t\toptions: {\n\t\t\t\t\tschemaIds: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tid: 'firstLayer',\n\t\t\t\t\t\t\tversion: '2020_09_01',\n\t\t\t\t\t\t\tnamespace: CORE_NAMESPACE,\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n\tnameReadable: 'manyNested',\n\tnameCamel: 'manyNested',\n\tnamePascal: 'ManyNested',\n\tisNested: false,\n\tdestinationDir: '#spruce/schemas',\n}\n\nconst firstLayerTemplateItem: SchemaTemplateItem = {\n\tid: 'firstLayer',\n\tnamespace: CORE_NAMESPACE,\n\timportFrom: '@sprucelabs/spruce-core-schemas',\n\tschema: {\n\t\tid: 'firstLayer',\n\t\tversion: '2020_09_01',\n\t\tnamespace: CORE_NAMESPACE,\n\t\tfields: {\n\t\t\tsecondLayer: {\n\t\t\t\ttype: 'schema',\n\t\t\t\toptions: {\n\t\t\t\t\tschemaIds: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tid: 'secondLayer',\n\t\t\t\t\t\t\tnamespace: 'OutsideNamespace',\n\t\t\t\t\t\t\tversion: '2020_09_01',\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n\tnameReadable: 'firstLayer',\n\tnameCamel: 'firstLayer',\n\tnamePascal: 'FirstLayer',\n\tisNested: true,\n\tdestinationDir: '#spruce/schemas',\n}\n\nconst secondLayerTemplateItem: SchemaTemplateItem = {\n\tid: 'secondLayer',\n\tnamespace: 'OutsideNamespace',\n\tschema: {\n\t\tid: 'secondLayer',\n\t\tversion: '2020_09_01',\n\t\tnamespace: 'OutsideNamespace',\n\t\tfields: {\n\t\t\tlastLayer: {\n\t\t\t\ttype: 'schema',\n\t\t\t\toptions: {\n\t\t\t\t\tschemaIds: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tid: 'lastLayer',\n\t\t\t\t\t\t\tversion: '2020_09_01',\n\t\t\t\t\t\t\tnamespace: 'OutsideNamespace',\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n\tnameReadable: 'secondLayer',\n\tnameCamel: 'secondLayer',\n\tnamePascal: 'SecondLayer',\n\tisNested: true,\n\tdestinationDir: '#spruce/schemas',\n}\n\nconst lastLayerTemplateItem: SchemaTemplateItem = {\n\tid: 'lastLayer',\n\tnamespace: 'OutsideNamespace',\n\tschema: {\n\t\tid: 'lastLayer',\n\t\tnamespace: 'OutsideNamespace',\n\t\tversion: '2020_09_01',\n\t\tfields: { pass: { type: 'boolean' } },\n\t},\n\tnameReadable: 'lastLayer',\n\tnameCamel: 'lastLayer',\n\tnamePascal: 'LastLayer',\n\tisNested: true,\n\tdestinationDir: '#spruce/schemas',\n}\n\nconst mercurySchemas = [\n\t{\n\t\tid: 'mercuryContract',\n\t\tname: 'Mercury Contract',\n\t\tdescription: '',\n\t\tfields: {\n\t\t\teventSignatures: {\n\t\t\t\ttype: 'schema',\n\t\t\t\tisRequired: true,\n\t\t\t\tisArray: true,\n\t\t\t\toptions: {\n\t\t\t\t\tschema: {\n\t\t\t\t\t\tid: 'eventSignature',\n\t\t\t\t\t\tname: 'Event Signature',\n\t\t\t\t\t\tdescription: '',\n\t\t\t\t\t\tfields: {\n\t\t\t\t\t\t\tfullyQualifiedEventName: {\n\t\t\t\t\t\t\t\ttype: 'text',\n\t\t\t\t\t\t\t\tisRequired: true,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tresponsePayload: {\n\t\t\t\t\t\t\t\ttype: 'raw',\n\t\t\t\t\t\t\t\toptions: { valueType: 'SpruceSchema.Schema' },\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\temitPayload: {\n\t\t\t\t\t\t\t\ttype: 'raw',\n\t\t\t\t\t\t\t\toptions: { valueType: 'SpruceSchema.Schema' },\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tlistenPermissions: {\n\t\t\t\t\t\t\t\ttype: 'schema',\n\t\t\t\t\t\t\t\tisArray: true,\n\t\t\t\t\t\t\t\toptions: {\n\t\t\t\t\t\t\t\t\tschemaId: { id: 'permission', version: 'v2020_09_01' },\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\temitPermissions: {\n\t\t\t\t\t\t\t\ttype: 'schema',\n\t\t\t\t\t\t\t\tisArray: true,\n\t\t\t\t\t\t\t\toptions: {\n\t\t\t\t\t\t\t\t\tschemaId: { id: 'permission', version: 'v2020_09_01' },\n\t\t\t\t\t\t\t\t},\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},\n\t\t\t},\n\t\t},\n\t\tversion: 'v2020_09_01',\n\t},\n\t{\n\t\tid: 'permissionContract',\n\t\tname: 'Permission Contract',\n\t\tdescription: '',\n\t\tfields: {\n\t\t\trequireAllPermissions: { type: 'boolean', defaultValue: false },\n\t\t\tpermissions: {\n\t\t\t\ttype: 'schema',\n\t\t\t\tisRequired: true,\n\t\t\t\tisArray: true,\n\t\t\t\toptions: {\n\t\t\t\t\tschema: {\n\t\t\t\t\t\tid: 'permission',\n\t\t\t\t\t\tname: 'Permission',\n\t\t\t\t\t\tfields: {\n\t\t\t\t\t\t\tname: {\n\t\t\t\t\t\t\t\ttype: 'text',\n\t\t\t\t\t\t\t\tlabel: 'Permission name',\n\t\t\t\t\t\t\t\tisRequired: true,\n\t\t\t\t\t\t\t\thint: 'Hyphen separated name for this permission, e.g. can-unlock-doors',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\trequireAllStatuses: {\n\t\t\t\t\t\t\t\ttype: 'boolean',\n\t\t\t\t\t\t\t\tlabel: 'Require all statuses',\n\t\t\t\t\t\t\t\tdefaultValue: false,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tdefaults: {\n\t\t\t\t\t\t\t\ttype: 'schema',\n\t\t\t\t\t\t\t\toptions: {\n\t\t\t\t\t\t\t\t\tschema: {\n\t\t\t\t\t\t\t\t\t\tid: 'defaultsByRole',\n\t\t\t\t\t\t\t\t\t\tfields: {\n\t\t\t\t\t\t\t\t\t\t\towner: { type: 'boolean' },\n\t\t\t\t\t\t\t\t\t\t\tgroupManager: { type: 'boolean' },\n\t\t\t\t\t\t\t\t\t\t\tmanager: { type: 'boolean' },\n\t\t\t\t\t\t\t\t\t\t\tteammate: { type: 'boolean' },\n\t\t\t\t\t\t\t\t\t\t\tguest: { type: 'boolean' },\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tcan: {\n\t\t\t\t\t\t\t\ttype: 'schema',\n\t\t\t\t\t\t\t\toptions: {\n\t\t\t\t\t\t\t\t\tschema: {\n\t\t\t\t\t\t\t\t\t\tid: 'statusFlags',\n\t\t\t\t\t\t\t\t\t\tfields: {\n\t\t\t\t\t\t\t\t\t\t\tdefault: { type: 'boolean' },\n\t\t\t\t\t\t\t\t\t\t\tclockedIn: {\n\t\t\t\t\t\t\t\t\t\t\t\tlabel: 'Clocked in',\n\t\t\t\t\t\t\t\t\t\t\t\thint: 'Is the person clocked in and ready to rock?',\n\t\t\t\t\t\t\t\t\t\t\t\ttype: 'boolean',\n\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\tclockedOut: {\n\t\t\t\t\t\t\t\t\t\t\t\tlabel: 'Clocked out',\n\t\t\t\t\t\t\t\t\t\t\t\thint: 'When someone is not working (off the clock).',\n\t\t\t\t\t\t\t\t\t\t\t\ttype: 'boolean',\n\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\tonPrem: {\n\t\t\t\t\t\t\t\t\t\t\t\tlabel: 'On premise',\n\t\t\t\t\t\t\t\t\t\t\t\thint: 'Are they at work (maybe working, maybe visiting).',\n\t\t\t\t\t\t\t\t\t\t\t\ttype: 'boolean',\n\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\toffPrem: {\n\t\t\t\t\t\t\t\t\t\t\t\tlabel: 'Off premise',\n\t\t\t\t\t\t\t\t\t\t\t\thint: \"They aren't at the office or shop.\",\n\t\t\t\t\t\t\t\t\t\t\t\ttype: 'boolean',\n\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\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},\n\t\t\t},\n\t\t},\n\t\tversion: 'v2020_09_01',\n\t},\n]\n\nconst mercuryTemplateItems = [\n\t{\n\t\tid: 'statusFlags',\n\t\timportFrom: '@sprucelabs/spruce-core-schemas',\n\t\tnamespace: CORE_NAMESPACE,\n\t\tschema: {\n\t\t\tversion: 'v2020_09_01',\n\t\t\tid: 'statusFlags',\n\t\t\tnamespace: CORE_NAMESPACE,\n\t\t\tfields: {\n\t\t\t\tdefault: { type: 'boolean' },\n\t\t\t\tclockedIn: {\n\t\t\t\t\tlabel: 'Clocked in',\n\t\t\t\t\thint: 'Is the person clocked in and ready to rock?',\n\t\t\t\t\ttype: 'boolean',\n\t\t\t\t},\n\t\t\t\tclockedOut: {\n\t\t\t\t\tlabel: 'Clocked out',\n\t\t\t\t\thint: 'When someone is not working (off the clock).',\n\t\t\t\t\ttype: 'boolean',\n\t\t\t\t},\n\t\t\t\tonPrem: {\n\t\t\t\t\tlabel: 'On premise',\n\t\t\t\t\thint: 'Are they at work (maybe working, maybe visiting).',\n\t\t\t\t\ttype: 'boolean',\n\t\t\t\t},\n\t\t\t\toffPrem: {\n\t\t\t\t\tlabel: 'Off premise',\n\t\t\t\t\thint: \"They aren't at the office or shop.\",\n\t\t\t\t\ttype: 'boolean',\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tnameReadable: 'statusFlags',\n\t\tnameCamel: 'statusFlags',\n\t\tnamePascal: 'StatusFlags',\n\t\tisNested: true,\n\t\tdestinationDir: '#spruce/schemas',\n\t},\n\t{\n\t\tid: 'defaultsByRole',\n\t\timportFrom: '@sprucelabs/spruce-core-schemas',\n\t\tnamespace: CORE_NAMESPACE,\n\t\tschema: {\n\t\t\tversion: 'v2020_09_01',\n\t\t\tid: 'defaultsByRole',\n\t\t\tnamespace: CORE_NAMESPACE,\n\t\t\tfields: {\n\t\t\t\towner: { type: 'boolean' },\n\t\t\t\tgroupManager: { type: 'boolean' },\n\t\t\t\tmanager: { type: 'boolean' },\n\t\t\t\tteammate: { type: 'boolean' },\n\t\t\t\tguest: { type: 'boolean' },\n\t\t\t},\n\t\t},\n\t\tnameReadable: 'defaultsByRole',\n\t\tnameCamel: 'defaultsByRole',\n\t\tnamePascal: 'DefaultsByRole',\n\t\tisNested: true,\n\t\tdestinationDir: '#spruce/schemas',\n\t},\n\t{\n\t\tid: 'permission',\n\t\tnamespace: CORE_NAMESPACE,\n\t\timportFrom: '@sprucelabs/spruce-core-schemas',\n\t\tschema: {\n\t\t\tversion: 'v2020_09_01',\n\t\t\tid: 'permission',\n\t\t\tnamespace: CORE_NAMESPACE,\n\t\t\tfields: {\n\t\t\t\tname: {\n\t\t\t\t\ttype: 'text',\n\t\t\t\t\tlabel: 'Permission name',\n\t\t\t\t\tisRequired: true,\n\t\t\t\t\thint: 'Hyphen separated name for this permission, e.g. can-unlock-doors',\n\t\t\t\t},\n\t\t\t\trequireAllStatuses: {\n\t\t\t\t\ttype: 'boolean',\n\t\t\t\t\tlabel: 'Require all statuses',\n\t\t\t\t\tdefaultValue: false,\n\t\t\t\t},\n\t\t\t\tdefaults: {\n\t\t\t\t\ttype: 'schema',\n\t\t\t\t\toptions: {\n\t\t\t\t\t\tschemaIds: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tid: 'defaultsByRole',\n\t\t\t\t\t\t\t\tversion: 'v2020_09_01',\n\t\t\t\t\t\t\t\tnamespace: CORE_NAMESPACE,\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},\n\t\t\t\tcan: {\n\t\t\t\t\ttype: 'schema',\n\t\t\t\t\toptions: {\n\t\t\t\t\t\tschemaIds: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tid: 'statusFlags',\n\t\t\t\t\t\t\t\tversion: 'v2020_09_01',\n\t\t\t\t\t\t\t\tnamespace: CORE_NAMESPACE,\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},\n\t\t\t},\n\t\t\tname: 'Permission',\n\t\t},\n\t\tnameReadable: 'Permission',\n\t\tnameCamel: 'permission',\n\t\tnamePascal: 'Permission',\n\t\tisNested: true,\n\t\tdestinationDir: '#spruce/schemas',\n\t},\n\t{\n\t\tid: 'permissionContract',\n\t\tnamespace: CORE_NAMESPACE,\n\t\timportFrom: '@sprucelabs/spruce-core-schemas',\n\t\tschema: {\n\t\t\tid: 'permissionContract',\n\t\t\tname: 'Permission Contract',\n\t\t\tnamespace: CORE_NAMESPACE,\n\t\t\tdescription: '',\n\t\t\tfields: {\n\t\t\t\trequireAllPermissions: { type: 'boolean', defaultValue: false },\n\t\t\t\tpermissions: {\n\t\t\t\t\ttype: 'schema',\n\t\t\t\t\tisRequired: true,\n\t\t\t\t\tisArray: true,\n\t\t\t\t\toptions: {\n\t\t\t\t\t\tschemaIds: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tid: 'permission',\n\t\t\t\t\t\t\t\tversion: 'v2020_09_01',\n\t\t\t\t\t\t\t\tnamespace: CORE_NAMESPACE,\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},\n\t\t\t},\n\t\t\tversion: 'v2020_09_01',\n\t\t},\n\t\tnameReadable: 'Permission Contract',\n\t\tnameCamel: 'permissionContract',\n\t\tnamePascal: 'PermissionContract',\n\t\tisNested: false,\n\t\tdestinationDir: '#spruce/schemas',\n\t},\n\t{\n\t\tid: 'eventSignature',\n\t\tnamespace: CORE_NAMESPACE,\n\t\timportFrom: '@sprucelabs/spruce-core-schemas',\n\t\tschema: {\n\t\t\tversion: 'v2020_09_01',\n\t\t\tid: 'eventSignature',\n\t\t\tname: 'Event Signature',\n\t\t\tnamespace: CORE_NAMESPACE,\n\t\t\tdescription: '',\n\t\t\tfields: {\n\t\t\t\tfullyQualifiedEventName: { type: 'text', isRequired: true },\n\t\t\t\tresponsePayload: {\n\t\t\t\t\ttype: 'raw',\n\t\t\t\t\toptions: { valueType: 'SpruceSchema.Schema' },\n\t\t\t\t},\n\t\t\t\temitPayload: {\n\t\t\t\t\ttype: 'raw',\n\t\t\t\t\toptions: { valueType: 'SpruceSchema.Schema' },\n\t\t\t\t},\n\t\t\t\tlistenPermissions: {\n\t\t\t\t\ttype: 'schema',\n\t\t\t\t\tisArray: true,\n\t\t\t\t\toptions: {\n\t\t\t\t\t\tschemaIds: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tversion: 'v2020_09_01',\n\t\t\t\t\t\t\t\tid: 'permission',\n\t\t\t\t\t\t\t\tnamespace: CORE_NAMESPACE,\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},\n\t\t\t\temitPermissions: {\n\t\t\t\t\ttype: 'schema',\n\t\t\t\t\tisArray: true,\n\t\t\t\t\toptions: {\n\t\t\t\t\t\tschemaIds: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tversion: 'v2020_09_01',\n\t\t\t\t\t\t\t\tid: 'permission',\n\t\t\t\t\t\t\t\tnamespace: CORE_NAMESPACE,\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},\n\t\t\t},\n\t\t},\n\t\tnameReadable: 'Event Signature',\n\t\tnameCamel: 'eventSignature',\n\t\tnamePascal: 'EventSignature',\n\t\tisNested: true,\n\t\tdestinationDir: '#spruce/schemas',\n\t},\n\t{\n\t\tid: 'mercuryContract',\n\t\tnamespace: CORE_NAMESPACE,\n\t\timportFrom: '@sprucelabs/spruce-core-schemas',\n\t\tschema: {\n\t\t\tid: 'mercuryContract',\n\t\t\tname: 'Mercury Contract',\n\t\t\tnamespace: CORE_NAMESPACE,\n\t\t\tdescription: '',\n\t\t\tfields: {\n\t\t\t\teventSignatures: {\n\t\t\t\t\ttype: 'schema',\n\t\t\t\t\tisRequired: true,\n\t\t\t\t\tisArray: true,\n\t\t\t\t\toptions: {\n\t\t\t\t\t\tschemaIds: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tid: 'eventSignature',\n\t\t\t\t\t\t\t\tversion: 'v2020_09_01',\n\t\t\t\t\t\t\t\tnamespace: CORE_NAMESPACE,\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},\n\t\t\t},\n\t\t\tversion: 'v2020_09_01',\n\t\t},\n\t\tnameReadable: 'Mercury Contract',\n\t\tnameCamel: 'mercuryContract',\n\t\tnamePascal: 'MercuryContract',\n\t\tisNested: false,\n\t\tdestinationDir: '#spruce/schemas',\n\t},\n]\n\nconst localSchema = buildSchema({\n\tid: 'localNamespaceSchema',\n\tnamespace: 'Mercury',\n\tfields: {\n\t\tonlyField: {\n\t\t\ttype: 'text',\n\t\t},\n\t},\n})\n\nconst localSchemaTemplateItem: SchemaTemplateItem = {\n\tnamespace: 'Mercury',\n\tid: 'localNamespaceSchema',\n\tnameCamel: 'localNamespaceSchema',\n\tnamePascal: 'LocalNamespaceSchema',\n\tnameReadable: 'localNamespaceSchema',\n\tisNested: false,\n\tdestinationDir: '#spruce/schemas',\n\tschema: localSchema,\n}\n\nexport default class SchemaTemplateItemBuilderTest extends AbstractCliTest {\n\tprivate static itemBuilder: SchemaTemplateItemBuilder\n\n\tprivate static readonly LOCAL_NAMESPACE = 'LocalNamespace'\n\n\tprotected static async beforeEach() {\n\t\tawait super.beforeEach()\n\t\tthis.itemBuilder = new SchemaTemplateItemBuilder(this.LOCAL_NAMESPACE)\n\t}\n\n\t@test()\n\tprotected static canInstantiate() {\n\t\tassert.isTruthy(this.itemBuilder)\n\t}\n\n\t@test()\n\tprotected static hasGenerateFunction() {\n\t\tassert.isFunction(this.itemBuilder.buildTemplateItems)\n\t}\n\n\t@test()\n\tprotected static turnsSingleDefinitionIntoTemplateItem() {\n\t\tconst results = this.itemBuilder.buildTemplateItems(\n\t\t\t{ [CORE_NAMESPACE]: [personV1] },\n\t\t\t'#spruce/schemas'\n\t\t)\n\t\tconst actual = results[0]\n\n\t\tassert.isEqualDeep(actual, personV1TemplateItem)\n\t}\n\n\t@test(\n\t\t'turns 2 definitions into 2 template items',\n\t\t[cowbellV1, personV1],\n\t\t[personV1TemplateItem, cowbellV1TemplateItem]\n\t)\n\t@test(\n\t\t'turns one nested definition into 2 items',\n\t\t[personV2],\n\t\t[vehicleV1TemplateItem, personV2TemplateItem]\n\t)\n\t@test(\n\t\t'handles recursion without looping forever',\n\t\t[personV3],\n\t\t[\n\t\t\tcowbellV1NestedTemplateItem,\n\t\t\tpersonV3TemplateItem,\n\t\t\tcowbellV2NestedTemplateItem,\n\t\t]\n\t)\n\t@test(\n\t\t'handles duplication',\n\t\t[cowbellV1, cowbellV1, cowbellV1],\n\t\t[cowbellV1TemplateItem]\n\t)\n\t@test(\n\t\t'handles resolving by id and version',\n\t\t[personV4, personV3, cowbellV1, cowbellV2],\n\t\t[\n\t\t\tcowbellV2TemplateItem,\n\t\t\tcowbellV1TemplateItem,\n\t\t\tpersonV3TemplateItem,\n\t\t\tpersonV4TemplateItem,\n\t\t]\n\t)\n\t@test(\n\t\t'handles resolving by id and version in different order',\n\t\t[cowbellV1, personV4, personV3, cowbellV2],\n\t\t[\n\t\t\tcowbellV2TemplateItem,\n\t\t\tcowbellV1TemplateItem,\n\t\t\tpersonV3TemplateItem,\n\t\t\tpersonV4TemplateItem,\n\t\t]\n\t)\n\t@test(\n\t\t'handles nested schema in dynamic key signature',\n\t\t[nestedMercuryContract],\n\t\t[eventSignatureTemplateItem, mercuryTemplateItem]\n\t)\n\t@test(\n\t\t'handles nested schemas in dynamic key signature',\n\t\t[nestedMercuryContractArray],\n\t\t[\n\t\t\teventSignatureTemplateItem2,\n\t\t\teventSignatureTemplateItem,\n\t\t\tmercuryTemplateItemArray,\n\t\t]\n\t)\n\t@test(\n\t\t'handles many layers of nested schemas',\n\t\t[schemaWithManyNestedSchemas],\n\t\t[\n\t\t\tlastLayerTemplateItem,\n\t\t\tsecondLayerTemplateItem,\n\t\t\tfirstLayerTemplateItem,\n\t\t\tmanyNestedTemplateItem,\n\t\t]\n\t)\n\t@test('can import event contracts', mercurySchemas, mercuryTemplateItems)\n\t@test(\n\t\t'import from not set if matching local namespace',\n\t\t[localSchema],\n\t\t[localSchemaTemplateItem],\n\t\t'Mercury'\n\t)\n\tprotected static generationTests(\n\t\tschemas: Schema[],\n\t\texpected: SchemaTemplateItem[],\n\t\tlocalNamespace = this.LOCAL_NAMESPACE\n\t) {\n\t\tthis.itemBuilder = new SchemaTemplateItemBuilder(localNamespace)\n\n\t\tconst results = this.itemBuilder.buildTemplateItems({\n\t\t\t[CORE_NAMESPACE]: schemas,\n\t\t})\n\n\t\tassert.isLength(results, expected.length)\n\n\t\texpected.forEach((expected, idx) => {\n\t\t\tconst match = results[idx]\n\t\t\tassert.isTruthy(match, `Did not find a template item for ${expected.id}`)\n\t\t\tassert.isEqualDeep(match, expected)\n\t\t})\n\t}\n\n\t@test()\n\tprotected static setsImports() {\n\t\tconst results = this.itemBuilder.buildTemplateItems(\n\t\t\t{\n\t\t\t\t[this.LOCAL_NAMESPACE]: [\n\t\t\t\t\tbuildSchema({\n\t\t\t\t\t\tid: 'local',\n\t\t\t\t\t\timportsWhenLocal: ['import local from \"local\"'],\n\t\t\t\t\t\timportsWhenRemote: ['import remote from \"remote\"'],\n\t\t\t\t\t\tfields: {\n\t\t\t\t\t\t\tfirstName: { type: 'text' },\n\t\t\t\t\t\t},\n\t\t\t\t\t}),\n\t\t\t\t],\n\t\t\t},\n\t\t\t'#spruce/schemas'\n\t\t)\n\n\t\tassert.isEqualDeep(results, [\n\t\t\t{\n\t\t\t\tid: 'local',\n\t\t\t\tnamespace: 'LocalNamespace',\n\t\t\t\tschema: {\n\t\t\t\t\t//@ts-ignore\n\t\t\t\t\tid: 'local',\n\t\t\t\t\tnamespace: 'LocalNamespace',\n\t\t\t\t\timportsWhenLocal: [`import local from \"local\"`],\n\t\t\t\t\timportsWhenRemote: [`import remote from \"remote\"`],\n\t\t\t\t\tfields: {\n\t\t\t\t\t\tfirstName: {\n\t\t\t\t\t\t\ttype: 'text',\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tnameReadable: 'local',\n\t\t\t\tnameCamel: 'local',\n\t\t\t\tnamePascal: 'Local',\n\t\t\t\tisNested: false,\n\t\t\t\tdestinationDir: '#spruce/schemas',\n\t\t\t\timports: [`import local from \"local\"`],\n\t\t\t},\n\t\t])\n\t}\n\n\t@test()\n\tprotected static bringsImportsFromRemoteFromRelatedSchemas() {\n\t\tconst results = this.itemBuilder.buildTemplateItems(\n\t\t\t{\n\t\t\t\t[this.LOCAL_NAMESPACE]: [\n\t\t\t\t\tbuildSchema({\n\t\t\t\t\t\tid: 'local',\n\t\t\t\t\t\timportsWhenLocal: ['import local from \"local\"'],\n\t\t\t\t\t\timportsWhenRemote: ['import remote from \"remote\"'],\n\t\t\t\t\t\tfields: {\n\t\t\t\t\t\t\tfirstName: { type: 'text' },\n\t\t\t\t\t\t\tremote: {\n\t\t\t\t\t\t\t\ttype: 'schema',\n\t\t\t\t\t\t\t\toptions: {\n\t\t\t\t\t\t\t\t\tschema: { id: 'remote', namespace: 'AnotherNamespace' },\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tlocal: {\n\t\t\t\t\t\t\t\ttype: 'schema',\n\t\t\t\t\t\t\t\toptions: {\n\t\t\t\t\t\t\t\t\tschema: { id: 'local', namespace: this.LOCAL_NAMESPACE },\n\t\t\t\t\t\t\t\t},\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\tbuildSchema({\n\t\t\t\t\t\tid: 'local2',\n\t\t\t\t\t\timportsWhenLocal: ['import local2 from \"local2\"'],\n\t\t\t\t\t\timportsWhenRemote: ['import remote2 from \"remote2\"'],\n\t\t\t\t\t\tfields: {\n\t\t\t\t\t\t\tfirstName: { type: 'text' },\n\t\t\t\t\t\t\tremote: {\n\t\t\t\t\t\t\t\ttype: 'schema',\n\t\t\t\t\t\t\t\toptions: {\n\t\t\t\t\t\t\t\t\tschema: { id: 'remote', namespace: 'AnotherNamespace' },\n\t\t\t\t\t\t\t\t},\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],\n\t\t\t\tAnotherNamespace: [\n\t\t\t\t\tbuildSchema({\n\t\t\t\t\t\tid: 'remote',\n\t\t\t\t\t\timportsWhenLocal: ['import local2 from \"local2\"'],\n\t\t\t\t\t\timportsWhenRemote: ['import remote3 from \"remote3\"'],\n\t\t\t\t\t\tfields: {\n\t\t\t\t\t\t\tfirstName: { type: 'text' },\n\t\t\t\t\t\t},\n\t\t\t\t\t}),\n\t\t\t\t],\n\t\t\t},\n\t\t\t'#spruce/schemas'\n\t\t)\n\n\t\tassert.isEqualDeep(results, [\n\t\t\t{\n\t\t\t\tid: 'remote',\n\t\t\t\tnamespace: 'AnotherNamespace',\n\t\t\t\tschema: {\n\t\t\t\t\tid: 'remote',\n\t\t\t\t\tnamespace: 'AnotherNamespace',\n\t\t\t\t\timportsWhenLocal: ['import local2 from \"local2\"'],\n\t\t\t\t\timportsWhenRemote: ['import remote3 from \"remote3\"'],\n\t\t\t\t\tfields: { firstName: { type: 'text' } },\n\t\t\t\t},\n\t\t\t\tnameReadable: 'remote',\n\t\t\t\tnameCamel: 'remote',\n\t\t\t\tnamePascal: 'Remote',\n\t\t\t\tisNested: false,\n\t\t\t\tdestinationDir: '#spruce/schemas',\n\t\t\t\timports: ['import remote3 from \"remote3\"'],\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: 'local2',\n\t\t\t\tnamespace: 'LocalNamespace',\n\t\t\t\tschema: {\n\t\t\t\t\tnamespace: 'LocalNamespace',\n\t\t\t\t\tid: 'local2',\n\t\t\t\t\timportsWhenLocal: ['import local2 from \"local2\"'],\n\t\t\t\t\timportsWhenRemote: ['import remote2 from \"remote2\"'],\n\t\t\t\t\tfields: {\n\t\t\t\t\t\tfirstName: { type: 'text' },\n\t\t\t\t\t\tremote: {\n\t\t\t\t\t\t\ttype: 'schema',\n\t\t\t\t\t\t\toptions: {\n\t\t\t\t\t\t\t\tschemaIds: [{ id: 'remote', namespace: 'AnotherNamespace' }],\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},\n\t\t\t\tnameReadable: 'local2',\n\t\t\t\tnameCamel: 'local2',\n\t\t\t\tnamePascal: 'Local2',\n\t\t\t\tisNested: false,\n\t\t\t\tdestinationDir: '#spruce/schemas',\n\t\t\t\timports: [\n\t\t\t\t\t'import local2 from \"local2\"',\n\t\t\t\t\t'import remote3 from \"remote3\"',\n\t\t\t\t],\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: 'local',\n\t\t\t\tnamespace: 'LocalNamespace',\n\t\t\t\tschema: {\n\t\t\t\t\tid: 'local',\n\t\t\t\t\tnamespace: 'LocalNamespace',\n\t\t\t\t\timportsWhenLocal: ['import local from \"local\"'],\n\t\t\t\t\timportsWhenRemote: ['import remote from \"remote\"'],\n\t\t\t\t\tfields: {\n\t\t\t\t\t\tfirstName: { type: 'text' },\n\t\t\t\t\t\tremote: {\n\t\t\t\t\t\t\ttype: 'schema',\n\t\t\t\t\t\t\toptions: {\n\t\t\t\t\t\t\t\tschemaIds: [{ id: 'remote', namespace: 'AnotherNamespace' }],\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tlocal: {\n\t\t\t\t\t\t\ttype: 'schema',\n\t\t\t\t\t\t\toptions: {\n\t\t\t\t\t\t\t\tschemaIds: [{ id: 'local', namespace: 'LocalNamespace' }],\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},\n\t\t\t\tnameReadable: 'local',\n\t\t\t\tnameCamel: 'local',\n\t\t\t\tnamePascal: 'Local',\n\t\t\t\tisNested: false,\n\t\t\t\tdestinationDir: '#spruce/schemas',\n\t\t\t\timports: ['import local from \"local\"', 'import remote3 from \"remote3\"'],\n\t\t\t},\n\t\t])\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AACA,IAAAC,iBAAA,GAAAD,OAAA;AACA,IAAAE,UAAA,GAAAF,OAAA;AACA,IAAAG,0BAAA,GAAAC,sBAAA,CAAAJ,OAAA;AACA,IAAAK,iBAAA,GAAAD,sBAAA,CAAAJ,OAAA;AAAyD,IAAAM,qBAAA,EAAAC,sBAAA,EAAAC,IAAA,EAAAC,KAAA,EAAAC,KAAA,EAAAC,KAAA,EAAAC,KAAA,EAAAC,KAAA,EAAAC,KAAA,EAAAC,KAAA,EAAAC,KAAA,EAAAC,MAAA,EAAAC,MAAA,EAAAC,MAAA,EAAAC,MAAA,EAAAC,MAAA,EAAAC,MAAA,EAAAC,MAAA,EAAAC,MAAA,EAAAC,8BAAA;AAAA,SAAAC,WAAAC,CAAA,EAAAC,CAAA,EAAAC,CAAA,WAAAD,CAAA,OAAAE,gBAAA,aAAAF,CAAA,OAAAG,2BAAA,aAAAJ,CAAA,EAAAK,yBAAA,KAAAC,OAAA,CAAAC,SAAA,CAAAN,CAAA,EAAAC,CAAA,YAAAC,gBAAA,aAAAH,CAAA,EAAAQ,WAAA,IAAAP,CAAA,CAAAQ,KAAA,CAAAT,CAAA,EAAAE,CAAA;AAAA,SAAAG,0BAAA,cAAAL,CAAA,IAAAU,OAAA,CAAAC,SAAA,CAAAC,OAAA,CAAAC,IAAA,CAAAP,OAAA,CAAAC,SAAA,CAAAG,OAAA,iCAAAV,CAAA,aAAAK,yBAAA,YAAAA,0BAAA,aAAAL,CAAA;AAAA,SAAAc,QAAAZ,CAAA,EAAAa,CAAA,QAAAf,CAAA,GAAAgB,MAAA,CAAAC,IAAA,CAAAf,CAAA,OAAAc,MAAA,CAAAE,qBAAA,QAAAjB,CAAA,GAAAe,MAAA,CAAAE,qBAAA,CAAAhB,CAAA,GAAAa,CAAA,KAAAd,CAAA,GAAAA,CAAA,CAAAkB,MAAA,WAAAJ,CAAA,WAAAC,MAAA,CAAAI,wBAAA,CAAAlB,CAAA,EAAAa,CAAA,EAAAM,UAAA,OAAArB,CAAA,CAAAsB,IAAA,CAAAb,KAAA,CAAAT,CAAA,EAAAC,CAAA,YAAAD,CAAA;AAAA,SAAAuB,cAAArB,CAAA,aAAAa,CAAA,MAAAA,CAAA,GAAAS,SAAA,CAAAC,MAAA,EAAAV,CAAA,UAAAf,CAAA,WAAAwB,SAAA,CAAAT,CAAA,IAAAS,SAAA,CAAAT,CAAA,QAAAA,CAAA,OAAAD,OAAA,CAAAE,MAAA,CAAAhB,CAAA,OAAA0B,OAAA,WAAAX,CAAA,QAAAY,gBAAA,aAAAzB,CAAA,EAAAa,CAAA,EAAAf,CAAA,CAAAe,CAAA,SAAAC,MAAA,CAAAY,yBAAA,GAAAZ,MAAA,CAAAa,gBAAA,CAAA3B,CAAA,EAAAc,MAAA,CAAAY,yBAAA,CAAA5B,CAAA,KAAAc,OAAA,CAAAE,MAAA,CAAAhB,CAAA,GAAA0B,OAAA,WAAAX,CAAA,IAAAC,MAAA,CAAAc,cAAA,CAAA5B,CAAA,EAAAa,CAAA,EAAAC,MAAA,CAAAI,wBAAA,CAAApB,CAAA,EAAAe,CAAA,iBAAAb,CAAA;AAEzD,IAAM6B,SAAiB,GAAG;EACzBC,EAAE,EAAE,SAAS;EACbC,OAAO,EAAE,YAAY;EACrBC,IAAI,EAAE,cAAc;EACpBC,MAAM,EAAE;IACPC,MAAM,EAAE;MACPC,IAAI,EAAE;IACP;EACD;AACD,CAAC;AAED,IAAMC,qBAAyC,GAAG;EACjDC,SAAS,EAAEC,gCAAc;EACzBR,EAAE,EAAED,SAAS,CAACC,EAAE;EAChBS,UAAU,EAAE,iCAAiC;EAC7CC,SAAS,EAAE,SAAS;EACpBC,UAAU,EAAE,SAAS;EACrBC,YAAY,EAAE,cAAc;EAC5BC,MAAM,EAAAtB,aAAA,CAAAA,aAAA,KAAOQ,SAAS;IAAEQ,SAAS,EAAEC;EAAc,EAAE;EACnDM,QAAQ,EAAE,KAAK;EACfC,cAAc,EAAE;AACjB,CAAC;AAED,IAAMC,2BAA+C,GAAG;EACvDT,SAAS,EAAEC,gCAAc;EACzBR,EAAE,EAAED,SAAS,CAACC,EAAE;EAChBS,UAAU,EAAE,iCAAiC;EAC7CC,SAAS,EAAE,SAAS;EACpBC,UAAU,EAAE,SAAS;EACrBC,YAAY,EAAE,cAAc;EAC5BC,MAAM,EAAAtB,aAAA,CAAAA,aAAA,KAAOQ,SAAS;IAAEQ,SAAS,EAAEC;EAAc,EAAE;EACnDM,QAAQ,EAAE,IAAI;EACdC,cAAc,EAAE;AACjB,CAAC;AAED,IAAME,SAAiB,GAAG;EACzBjB,EAAE,EAAE,SAAS;EACbC,OAAO,EAAE,YAAY;EACrBC,IAAI,EAAE,mBAAmB;EACzBC,MAAM,EAAE;IACPC,MAAM,EAAE;MACPC,IAAI,EAAE;IACP,CAAC;IACDa,KAAK,EAAE;MACNb,IAAI,EAAE,QAAQ;MACdc,OAAO,EAAE;QACRC,QAAQ,EAAE;UAAEpB,EAAE,EAAE,QAAQ;UAAEC,OAAO,EAAE;QAAa;MACjD;IACD;EACD;AACD,CAAC;AAED,IAAMoB,qBAAyC,GAAG;EACjDd,SAAS,EAAEC,gCAAc;EACzBR,EAAE,EAAEiB,SAAS,CAACjB,EAAE;EAChBU,SAAS,EAAE,SAAS;EACpBC,UAAU,EAAE,SAAS;EACrBC,YAAY,EAAE,mBAAmB;EACjCE,QAAQ,EAAE,KAAK;EACfC,cAAc,EAAE,iBAAiB;EACjCN,UAAU,EAAE,iCAAiC;EAC7CI,MAAM,EAAE;IACPb,EAAE,EAAE,SAAS;IACbC,OAAO,EAAE,YAAY;IACrBC,IAAI,EAAE,mBAAmB;IACzBK,SAAS,EAAEC,gCAAc;IACzBL,MAAM,EAAE;MACPC,MAAM,EAAE;QACPC,IAAI,EAAE;MACP,CAAC;MACDa,KAAK,EAAE;QACNb,IAAI,EAAE,QAAQ;QACdc,OAAO,EAAE;UACRG,SAAS,EAAE,CACV;YAAEtB,EAAE,EAAE,QAAQ;YAAEC,OAAO,EAAE,YAAY;YAAEM,SAAS,EAAEC;UAAe,CAAC;QAEpE;MACD;IACD;EACD;AACD,CAAC;AAED,IAAMe,2BAA+C,GAAG;EACvDhB,SAAS,EAAEC,gCAAc;EACzBR,EAAE,EAAEiB,SAAS,CAACjB,EAAE;EAChBU,SAAS,EAAE,SAAS;EACpBC,UAAU,EAAE,SAAS;EACrBC,YAAY,EAAE,mBAAmB;EACjCE,QAAQ,EAAE,IAAI;EACdC,cAAc,EAAE,iBAAiB;EACjCN,UAAU,EAAE,iCAAiC;EAC7CI,MAAM,EAAE;IACPb,EAAE,EAAE,SAAS;IACbC,OAAO,EAAE,YAAY;IACrBC,IAAI,EAAE,mBAAmB;IACzBK,SAAS,EAAEC,gCAAc;IACzBL,MAAM,EAAE;MACPC,MAAM,EAAE;QACPC,IAAI,EAAE;MACP,CAAC;MACDa,KAAK,EAAE;QACNb,IAAI,EAAE,QAAQ;QACdc,OAAO,EAAE;UACRG,SAAS,EAAE,CACV;YAAEtB,EAAE,EAAE,QAAQ;YAAEC,OAAO,EAAE,YAAY;YAAEM,SAAS,EAAEC;UAAe,CAAC;QAEpE;MACD;IACD;EACD;AACD,CAAC;AAED,IAAMgB,QAAgB,GAAG;EACxBxB,EAAE,EAAE,QAAQ;EACZC,OAAO,EAAE,YAAY;EACrBC,IAAI,EAAE,aAAa;EACnBC,MAAM,EAAE;IACPD,IAAI,EAAE;MACLG,IAAI,EAAE;IACP;EACD;AACD,CAAC;AAED,IAAMoB,oBAAwC,GAAG;EAChDlB,SAAS,EAAEC,gCAAc;EACzBC,UAAU,EAAE,iCAAiC;EAC7CT,EAAE,EAAEwB,QAAQ,CAACxB,EAAE;EACfU,SAAS,EAAE,QAAQ;EACnBC,UAAU,EAAE,QAAQ;EACpBC,YAAY,EAAE,aAAa;EAC3BC,MAAM,EAAAtB,aAAA,CAAAA,aAAA,KAAOiC,QAAQ;IAAEjB,SAAS,EAAEC;EAAc,EAAE;EAClDM,QAAQ,EAAE,KAAK;EACfC,cAAc,EAAE;AACjB,CAAC;AAED,IAAMW,QAAgB,GAAG;EACxB1B,EAAE,EAAE,QAAQ;EACZC,OAAO,EAAE,YAAY;EACrBC,IAAI,EAAE,kBAAkB;EACxBC,MAAM,EAAE;IACPD,IAAI,EAAE;MACLG,IAAI,EAAE;IACP,CAAC;IACDsB,eAAe,EAAE;MAChBtB,IAAI,EAAE,QAAQ;MACdc,OAAO,EAAE;QACRN,MAAM,EAAE;UACPb,EAAE,EAAE,SAAS;UACbE,IAAI,EAAE,YAAY;UAClBD,OAAO,EAAE,YAAY;UACrBE,MAAM,EAAE;YACPyB,IAAI,EAAE;cACLvB,IAAI,EAAE;YACP;UACD;QACD;MACD;IACD;EACD;AACD,CAAC;AAED,IAAMwB,oBAAwC,GAAG;EAChDtB,SAAS,EAAEC,gCAAc;EACzBR,EAAE,EAAEwB,QAAQ,CAACxB,EAAE;EACfS,UAAU,EAAE,iCAAiC;EAC7CC,SAAS,EAAE,QAAQ;EACnBC,UAAU,EAAE,QAAQ;EACpBC,YAAY,EAAE,kBAAkB;EAChCE,QAAQ,EAAE,KAAK;EACfC,cAAc,EAAE,iBAAiB;EACjCF,MAAM,EAAE;IACPb,EAAE,EAAE,QAAQ;IACZC,OAAO,EAAE,YAAY;IACrBC,IAAI,EAAE,kBAAkB;IACxBK,SAAS,EAAEC,gCAAc;IACzBL,MAAM,EAAE;MACPD,IAAI,EAAE;QACLG,IAAI,EAAE;MACP,CAAC;MACDsB,eAAe,EAAE;QAChBtB,IAAI,EAAE,QAAQ;QACdc,OAAO,EAAE;UACRG,SAAS,EAAE,CACV;YAAEtB,EAAE,EAAE,SAAS;YAAEC,OAAO,EAAE,YAAY;YAAEM,SAAS,EAAEC;UAAe,CAAC;QAErE;MACD;IACD;EACD;AACD,CAAC;AAED,IAAMsB,QAAgB,GAAG;EACxB9B,EAAE,EAAE,QAAQ;EACZC,OAAO,EAAE,YAAY;EACrBC,IAAI,EAAE,qBAAqB;EAC3BC,MAAM,EAAE;IACP4B,YAAY,EAAE;MACb1B,IAAI,EAAE,QAAQ;MACdc,OAAO,EAAE;QACRa,OAAO,EAAE,CAACjC,SAAS,EAAEkB,SAAS;MAC/B;IACD;EACD;AACD,CAAC;AAED,IAAMgB,oBAAwC,GAAG;EAChD1B,SAAS,EAAEC,gCAAc;EACzBC,UAAU,EAAE,iCAAiC;EAC7CT,EAAE,EAAE8B,QAAQ,CAAC9B,EAAE;EACfU,SAAS,EAAE,QAAQ;EACnBC,UAAU,EAAE,QAAQ;EACpBC,YAAY,EAAE,qBAAqB;EACnCE,QAAQ,EAAE,KAAK;EACfC,cAAc,EAAE,iBAAiB;EACjCF,MAAM,EAAE;IACPb,EAAE,EAAE,QAAQ;IACZC,OAAO,EAAE,YAAY;IACrBC,IAAI,EAAE,qBAAqB;IAC3BK,SAAS,EAAEC,gCAAc;IACzBL,MAAM,EAAE;MACP4B,YAAY,EAAE;QACb1B,IAAI,EAAE,QAAQ;QACdc,OAAO,EAAE;UACRG,SAAS,EAAE,CACV;YAAEtB,EAAE,EAAE,SAAS;YAAEC,OAAO,EAAE,YAAY;YAAEM,SAAS,EAAEC;UAAe,CAAC,EACnE;YAAER,EAAE,EAAE,SAAS;YAAEC,OAAO,EAAE,YAAY;YAAEM,SAAS,EAAEC;UAAe,CAAC;QAErE;MACD;IACD;EACD;AACD,CAAC;AAED,IAAM0B,qBAAyC,GAAG;EACjD3B,SAAS,EAAEC,gCAAc;EACzBC,UAAU,EAAE,iCAAiC;EAC7CT,EAAE,EAAE,SAAS;EACbU,SAAS,EAAE,SAAS;EACpBC,UAAU,EAAE,SAAS;EACrBC,YAAY,EAAE,YAAY;EAC1BE,QAAQ,EAAE,IAAI;EACdC,cAAc,EAAE,iBAAiB;EACjCF,MAAM,EAAE;IACPb,EAAE,EAAE,SAAS;IACbE,IAAI,EAAE,YAAY;IAClBK,SAAS,EAAEC,gCAAc;IACzBP,OAAO,EAAE,YAAY;IACrBE,MAAM,EAAE;MACPyB,IAAI,EAAE;QACLvB,IAAI,EAAE;MACP;IACD;EACD;AACD,CAAC;AAED,IAAM8B,QAAgB,GAAG;EACxBnC,EAAE,EAAE,QAAQ;EACZC,OAAO,EAAE,YAAY;EACrBC,IAAI,EAAE,sBAAsB;EAC5BkC,gBAAgB,EAAE,CAAC,qCAAqC,CAAC;EACzDC,iBAAiB,EAAE,CAClB,0DAA0D,CAC1D;EACDlC,MAAM,EAAE;IACPmC,QAAQ,EAAE;MACTjC,IAAI,EAAE,QAAQ;MACdc,OAAO,EAAE;QACRG,SAAS,EAAE,CACV;UAAEtB,EAAE,EAAE,SAAS;UAAEC,OAAO,EAAE;QAAa,CAAC,EACxC;UAAED,EAAE,EAAE,SAAS;UAAEC,OAAO,EAAE;QAAa,CAAC;MAE1C;IACD;EACD;AACD,CAAC;AAED,IAAMsC,oBAAwC,GAAG;EAChDhC,SAAS,EAAEC,gCAAc;EACzBC,UAAU,EAAE,iCAAiC;EAC7CT,EAAE,EAAEmC,QAAQ,CAACnC,EAAE;EACfU,SAAS,EAAE,QAAQ;EACnBC,UAAU,EAAE,QAAQ;EACpBC,YAAY,EAAE,sBAAsB;EACpCC,MAAM,EAAE;IACPb,EAAE,EAAE,QAAQ;IACZC,OAAO,EAAE,YAAY;IACrBC,IAAI,EAAE,sBAAsB;IAC5BK,SAAS,EAAEC,gCAAc;IACzB4B,gBAAgB,EAAE,CAAC,qCAAqC,CAAC;IACzDC,iBAAiB,EAAE,CAClB,0DAA0D,CAC1D;IACDlC,MAAM,EAAE;MACPmC,QAAQ,EAAE;QACTjC,IAAI,EAAE,QAAQ;QACdc,OAAO,EAAE;UACRG,SAAS,EAAE,CACV;YAAEtB,EAAE,EAAE,SAAS;YAAEC,OAAO,EAAE,YAAY;YAAEM,SAAS,EAAEC;UAAe,CAAC,EACnE;YAAER,EAAE,EAAE,SAAS;YAAEC,OAAO,EAAE,YAAY;YAAEM,SAAS,EAAEC;UAAe,CAAC;QAErE;MACD;IACD;EACD,CAAC;EACDM,QAAQ,EAAE,KAAK;EACf0B,OAAO,EAAE,CAAC,0DAA0D,CAAC;EACrEzB,cAAc,EAAE;AACjB,CAAC;AAED,IAAM0B,qBAA6B,GAAG;EACrCzC,EAAE,EAAE,iBAAiB;EACrBE,IAAI,EAAE,kBAAkB;EACxBwC,WAAW,EAAE,EAAE;EACfzC,OAAO,EAAE,YAAY;EACrB0C,qBAAqB,EAAE;IACtBtC,IAAI,EAAE,QAAQ;IACduC,OAAO,EAAE,yBAAyB;IAClCzB,OAAO,EAAE;MACRN,MAAM,EAAE;QACPb,EAAE,EAAE,gBAAgB;QACpBE,IAAI,EAAE,iBAAiB;QACvBwC,WAAW,EAAE,EAAE;QACfvC,MAAM,EAAE;UACP0C,eAAe,EAAE;YAChBxC,IAAI,EAAE,KAAK;YACXc,OAAO,EAAE;cAAE2B,SAAS,EAAE;YAAS;UAChC,CAAC;UACDC,WAAW,EAAE;YACZ1C,IAAI,EAAE,KAAK;YACXc,OAAO,EAAE;cAAE2B,SAAS,EAAE;YAAS;UAChC,CAAC;UACDE,oBAAoB,EAAE;YACrB3C,IAAI,EAAE;UACP,CAAC;UACD4C,kBAAkB,EAAE;YACnB5C,IAAI,EAAE;UACP;QACD;MACD;IACD;EACD;AACD,CAAC;AAED,IAAM6C,0BAAkC,GAAG;EAC1ClD,EAAE,EAAE,iBAAiB;EACrBE,IAAI,EAAE,kBAAkB;EACxBwC,WAAW,EAAE,EAAE;EACfzC,OAAO,EAAE,YAAY;EAErB0C,qBAAqB,EAAE;IACtBtC,IAAI,EAAE,QAAQ;IACduC,OAAO,EAAE,yBAAyB;IAClCzB,OAAO,EAAE;MACRa,OAAO,EAAE,CACR;QACChC,EAAE,EAAE,gBAAgB;QACpBE,IAAI,EAAE,iBAAiB;QACvBwC,WAAW,EAAE,EAAE;QACfvC,MAAM,EAAE;UACP0C,eAAe,EAAE;YAChBxC,IAAI,EAAE,KAAK;YACXc,OAAO,EAAE;cAAE2B,SAAS,EAAE;YAAS;UAChC,CAAC;UACDC,WAAW,EAAE;YACZ1C,IAAI,EAAE,KAAK;YACXc,OAAO,EAAE;cAAE2B,SAAS,EAAE;YAAS;UAChC,CAAC;UACDE,oBAAoB,EAAE;YACrB3C,IAAI,EAAE;UACP,CAAC;UACD4C,kBAAkB,EAAE;YACnB5C,IAAI,EAAE;UACP;QACD;MACD,CAAC,EACD;QACCL,EAAE,EAAE,iBAAiB;QACrBE,IAAI,EAAE,kBAAkB;QACxBwC,WAAW,EAAE,EAAE;QACfvC,MAAM,EAAE;UACP0C,eAAe,EAAE;YAChBxC,IAAI,EAAE,KAAK;YACXc,OAAO,EAAE;cAAE2B,SAAS,EAAE;YAAS;UAChC,CAAC;UACDC,WAAW,EAAE;YACZ1C,IAAI,EAAE,KAAK;YACXc,OAAO,EAAE;cAAE2B,SAAS,EAAE;YAAS;UAChC,CAAC;UACDE,oBAAoB,EAAE;YACrB3C,IAAI,EAAE;UACP,CAAC;UACD4C,kBAAkB,EAAE;YACnB5C,IAAI,EAAE;UACP;QACD;MACD,CAAC;IAEH;EACD;AACD,CAAC;AAED,IAAM8C,mBAAuC,GAAG;EAC/C5C,SAAS,EAAEC,gCAAc;EACzBC,UAAU,EAAE,iCAAiC;EAC7CT,EAAE,EAAEyC,qBAAqB,CAACzC,EAAE;EAC5BU,SAAS,EAAE,iBAAiB;EAC5BC,UAAU,EAAE,iBAAiB;EAC7BC,YAAY,GAAAjE,qBAAA,GAAE8F,qBAAqB,CAACvC,IAAI,cAAAvD,qBAAA,cAAAA,qBAAA,GAAI8F,qBAAqB,CAACzC,EAAE;EACpEc,QAAQ,EAAE,KAAK;EACfC,cAAc,EAAE,iBAAiB;EACjCF,MAAM,EAAE;IACPb,EAAE,EAAE,iBAAiB;IACrBE,IAAI,EAAE,kBAAkB;IACxBwC,WAAW,EAAE,EAAE;IACfnC,SAAS,EAAEC,gCAAc;IACzBP,OAAO,EAAE,YAAY;IACrB0C,qBAAqB,EAAE;MACtBtC,IAAI,EAAE,QAAQ;MACduC,OAAO,EAAE,yBAAyB;MAClCzB,OAAO,EAAE;QACRG,SAAS,EAAE,CACV;UACCtB,EAAE,EAAE,gBAAgB;UACpBC,OAAO,EAAE,YAAY;UACrBM,SAAS,EAAEC;QACZ,CAAC;MAEH;IACD;EACD;AACD,CAAC;AAED,IAAM4C,0BAA8C,GAAG;EACtD7C,SAAS,EAAEC,gCAAc;EACzBR,EAAE,EAAE,gBAAgB;EACpBS,UAAU,EAAE,iCAAiC;EAC7CC,SAAS,EAAE,gBAAgB;EAC3BC,UAAU,EAAE,gBAAgB;EAC5BC,YAAY,EAAE,iBAAiB;EAC/BE,QAAQ,EAAE,IAAI;EACdC,cAAc,EAAE,iBAAiB;EACjCF,MAAM,EAAE;IACPb,EAAE,EAAE,gBAAgB;IACpBE,IAAI,EAAE,iBAAiB;IACvBwC,WAAW,EAAE,EAAE;IACfzC,OAAO,EAAE,YAAY;IACrBM,SAAS,EAAEC,gCAAc;IACzBL,MAAM,EAAE;MACP0C,eAAe,EAAE;QAChBxC,IAAI,EAAE,KAAK;QACXc,OAAO,EAAE;UAAE2B,SAAS,EAAE;QAAS;MAChC,CAAC;MACDC,WAAW,EAAE;QACZ1C,IAAI,EAAE,KAAK;QACXc,OAAO,EAAE;UAAE2B,SAAS,EAAE;QAAS;MAChC,CAAC;MACDE,oBAAoB,EAAE;QACrB3C,IAAI,EAAE;MACP,CAAC;MACD4C,kBAAkB,EAAE;QACnB5C,IAAI,EAAE;MACP;IACD;EACD;AACD,CAAC;AACD,IAAMgD,wBAA4C,GAAG;EACpD9C,SAAS,EAAEC,gCAAc;EACzBR,EAAE,EAAEkD,0BAA0B,CAAClD,EAAE;EACjCS,UAAU,EAAE,iCAAiC;EAC7CC,SAAS,EAAE,iBAAiB;EAC5BC,UAAU,EAAE,iBAAiB;EAC7BC,YAAY,GAAAhE,sBAAA,GACXsG,0BAA0B,CAAChD,IAAI,cAAAtD,sBAAA,cAAAA,sBAAA,GAAIsG,0BAA0B,CAAClD,EAAE;EACjEc,QAAQ,EAAE,KAAK;EACfC,cAAc,EAAE,iBAAiB;EACjCF,MAAM,EAAE;IACPb,EAAE,EAAE,iBAAiB;IACrBE,IAAI,EAAE,kBAAkB;IACxBwC,WAAW,EAAE,EAAE;IACfzC,OAAO,EAAE,YAAY;IACrBM,SAAS,EAAEC,gCAAc;IACzBmC,qBAAqB,EAAE;MACtBtC,IAAI,EAAE,QAAQ;MACduC,OAAO,EAAE,yBAAyB;MAClCzB,OAAO,EAAE;QACRG,SAAS,EAAE,CACV;UACCtB,EAAE,EAAE,gBAAgB;UACpBC,OAAO,EAAE,YAAY;UACrBM,SAAS,EAAEC;QACZ,CAAC,EACD;UACCR,EAAE,EAAE,iBAAiB;UACrBC,OAAO,EAAE,YAAY;UACrBM,SAAS,EAAEC;QACZ,CAAC;MAEH;IACD;EACD;AACD,CAAC;AAED,IAAM8C,2BAA+C,GAAG;EACvD/C,SAAS,EAAEC,gCAAc;EACzBR,EAAE,EAAE,iBAAiB;EACrBU,SAAS,EAAE,iBAAiB;EAC5BD,UAAU,EAAE,iCAAiC;EAC7CE,UAAU,EAAE,iBAAiB;EAC7BC,YAAY,EAAE,kBAAkB;EAChCE,QAAQ,EAAE,IAAI;EACdC,cAAc,EAAE,iBAAiB;EACjCF,MAAM,EAAE;IACPb,EAAE,EAAE,iBAAiB;IACrBE,IAAI,EAAE,kBAAkB;IACxBwC,WAAW,EAAE,EAAE;IACfzC,OAAO,EAAE,YAAY;IACrBM,SAAS,EAAEC,gCAAc;IACzBL,MAAM,EAAE;MACP0C,eAAe,EAAE;QAChBxC,IAAI,EAAE,KAAK;QACXc,OAAO,EAAE;UAAE2B,SAAS,EAAE;QAAS;MAChC,CAAC;MACDC,WAAW,EAAE;QACZ1C,IAAI,EAAE,KAAK;QACXc,OAAO,EAAE;UAAE2B,SAAS,EAAE;QAAS;MAChC,CAAC;MACDE,oBAAoB,EAAE;QACrB3C,IAAI,EAAE;MACP,CAAC;MACD4C,kBAAkB,EAAE;QACnB5C,IAAI,EAAE;MACP;IACD;EACD;AACD,CAAC;AAED,IAAMkD,2BAAmC,GAAG;EAC3CvD,EAAE,EAAE,YAAY;EAChBC,OAAO,EAAE,YAAY;EACrBE,MAAM,EAAE;IACPqD,UAAU,EAAE;MACXnD,IAAI,EAAE,QAAQ;MACdc,OAAO,EAAE;QACRN,MAAM,EAAE;UACPb,EAAE,EAAE,YAAY;UAChBG,MAAM,EAAE;YACPsD,WAAW,EAAE;cACZpD,IAAI,EAAE,QAAQ;cACdc,OAAO,EAAE;gBACRN,MAAM,EAAE;kBACPb,EAAE,EAAE,aAAa;kBACjBO,SAAS,EAAE,kBAAkB;kBAC7BJ,MAAM,EAAE;oBACPuD,SAAS,EAAE;sBACVrD,IAAI,EAAE,QAAQ;sBACdc,OAAO,EAAE;wBACRN,MAAM,EAAE;0BACPb,EAAE,EAAE,WAAW;0BACfG,MAAM,EAAE;4BACPwD,IAAI,EAAE;8BACLtD,IAAI,EAAE;4BACP;0BACD;wBACD;sBACD;oBACD;kBACD;gBACD;cACD;YACD;UACD;QACD;MACD;IACD;EACD;AACD,CAAC;AAED,IAAMuD,sBAA0C,GAAG;EAClD5D,EAAE,EAAE,YAAY;EAChBO,SAAS,EAAEC,gCAAc;EACzBC,UAAU,EAAE,iCAAiC;EAC7CI,MAAM,EAAE;IACPb,EAAE,EAAE,YAAY;IAChBC,OAAO,EAAE,YAAY;IACrBM,SAAS,EAAEC,gCAAc;IACzBL,MAAM,EAAE;MACPqD,UAAU,EAAE;QACXnD,IAAI,EAAE,QAAQ;QACdc,OAAO,EAAE;UACRG,SAAS,EAAE,CACV;YACCtB,EAAE,EAAE,YAAY;YAChBC,OAAO,EAAE,YAAY;YACrBM,SAAS,EAAEC;UACZ,CAAC;QAEH;MACD;IACD;EACD,CAAC;EACDI,YAAY,EAAE,YAAY;EAC1BF,SAAS,EAAE,YAAY;EACvBC,UAAU,EAAE,YAAY;EACxBG,QAAQ,EAAE,KAAK;EACfC,cAAc,EAAE;AACjB,CAAC;AAED,IAAM8C,sBAA0C,GAAG;EAClD7D,EAAE,EAAE,YAAY;EAChBO,SAAS,EAAEC,gCAAc;EACzBC,UAAU,EAAE,iCAAiC;EAC7CI,MAAM,EAAE;IACPb,EAAE,EAAE,YAAY;IAChBC,OAAO,EAAE,YAAY;IACrBM,SAAS,EAAEC,gCAAc;IACzBL,MAAM,EAAE;MACPsD,WAAW,EAAE;QACZpD,IAAI,EAAE,QAAQ;QACdc,OAAO,EAAE;UACRG,SAAS,EAAE,CACV;YACCtB,EAAE,EAAE,aAAa;YACjBO,SAAS,EAAE,kBAAkB;YAC7BN,OAAO,EAAE;UACV,CAAC;QAEH;MACD;IACD;EACD,CAAC;EACDW,YAAY,EAAE,YAAY;EAC1BF,SAAS,EAAE,YAAY;EACvBC,UAAU,EAAE,YAAY;EACxBG,QAAQ,EAAE,IAAI;EACdC,cAAc,EAAE;AACjB,CAAC;AAED,IAAM+C,uBAA2C,GAAG;EACnD9D,EAAE,EAAE,aAAa;EACjBO,SAAS,EAAE,kBAAkB;EAC7BM,MAAM,EAAE;IACPb,EAAE,EAAE,aAAa;IACjBC,OAAO,EAAE,YAAY;IACrBM,SAAS,EAAE,kBAAkB;IAC7BJ,MAAM,EAAE;MACPuD,SAAS,EAAE;QACVrD,IAAI,EAAE,QAAQ;QACdc,OAAO,EAAE;UACRG,SAAS,EAAE,CACV;YACCtB,EAAE,EAAE,WAAW;YACfC,OAAO,EAAE,YAAY;YACrBM,SAAS,EAAE;UACZ,CAAC;QAEH;MACD;IACD;EACD,CAAC;EACDK,YAAY,EAAE,aAAa;EAC3BF,SAAS,EAAE,aAAa;EACxBC,UAAU,EAAE,aAAa;EACzBG,QAAQ,EAAE,IAAI;EACdC,cAAc,EAAE;AACjB,CAAC;AAED,IAAMgD,qBAAyC,GAAG;EACjD/D,EAAE,EAAE,WAAW;EACfO,SAAS,EAAE,kBAAkB;EAC7BM,MAAM,EAAE;IACPb,EAAE,EAAE,WAAW;IACfO,SAAS,EAAE,kBAAkB;IAC7BN,OAAO,EAAE,YAAY;IACrBE,MAAM,EAAE;MAAEwD,IAAI,EAAE;QAAEtD,IAAI,EAAE;MAAU;IAAE;EACrC,CAAC;EACDO,YAAY,EAAE,WAAW;EACzBF,SAAS,EAAE,WAAW;EACtBC,UAAU,EAAE,WAAW;EACvBG,QAAQ,EAAE,IAAI;EACdC,cAAc,EAAE;AACjB,CAAC;AAED,IAAMiD,cAAc,GAAG,CACtB;EACChE,EAAE,EAAE,iBAAiB;EACrBE,IAAI,EAAE,kBAAkB;EACxBwC,WAAW,EAAE,EAAE;EACfvC,MAAM,EAAE;IACP8D,eAAe,EAAE;MAChB5D,IAAI,EAAE,QAAQ;MACd6D,UAAU,EAAE,IAAI;MAChBC,OAAO,EAAE,IAAI;MACbhD,OAAO,EAAE;QACRN,MAAM,EAAE;UACPb,EAAE,EAAE,gBAAgB;UACpBE,IAAI,EAAE,iBAAiB;UACvBwC,WAAW,EAAE,EAAE;UACfvC,MAAM,EAAE;YACPiE,uBAAuB,EAAE;cACxB/D,IAAI,EAAE,MAAM;cACZ6D,UAAU,EAAE;YACb,CAAC;YACDrB,eAAe,EAAE;cAChBxC,IAAI,EAAE,KAAK;cACXc,OAAO,EAAE;gBAAE2B,SAAS,EAAE;cAAsB;YAC7C,CAAC;YACDC,WAAW,EAAE;cACZ1C,IAAI,EAAE,KAAK;cACXc,OAAO,EAAE;gBAAE2B,SAAS,EAAE;cAAsB;YAC7C,CAAC;YACDuB,iBAAiB,EAAE;cAClBhE,IAAI,EAAE,QAAQ;cACd8D,OAAO,EAAE,IAAI;cACbhD,OAAO,EAAE;gBACRC,QAAQ,EAAE;kBAAEpB,EAAE,EAAE,YAAY;kBAAEC,OAAO,EAAE;gBAAc;cACtD;YACD,CAAC;YACDqE,eAAe,EAAE;cAChBjE,IAAI,EAAE,QAAQ;cACd8D,OAAO,EAAE,IAAI;cACbhD,OAAO,EAAE;gBACRC,QAAQ,EAAE;kBAAEpB,EAAE,EAAE,YAAY;kBAAEC,OAAO,EAAE;gBAAc;cACtD;YACD;UACD;QACD;MACD;IACD;EACD,CAAC;EACDA,OAAO,EAAE;AACV,CAAC,EACD;EACCD,EAAE,EAAE,oBAAoB;EACxBE,IAAI,EAAE,qBAAqB;EAC3BwC,WAAW,EAAE,EAAE;EACfvC,MAAM,EAAE;IACPoE,qBAAqB,EAAE;MAAElE,IAAI,EAAE,SAAS;MAAEmE,YAAY,EAAE;IAAM,CAAC;IAC/DC,WAAW,EAAE;MACZpE,IAAI,EAAE,QAAQ;MACd6D,UAAU,EAAE,IAAI;MAChBC,OAAO,EAAE,IAAI;MACbhD,OAAO,EAAE;QACRN,MAAM,EAAE;UACPb,EAAE,EAAE,YAAY;UAChBE,IAAI,EAAE,YAAY;UAClBC,MAAM,EAAE;YACPD,IAAI,EAAE;cACLG,IAAI,EAAE,MAAM;cACZqE,KAAK,EAAE,iBAAiB;cACxBR,UAAU,EAAE,IAAI;cAChBS,IAAI,EAAE;YACP,CAAC;YACDC,kBAAkB,EAAE;cACnBvE,IAAI,EAAE,SAAS;cACfqE,KAAK,EAAE,sBAAsB;cAC7BF,YAAY,EAAE;YACf,CAAC;YACDK,QAAQ,EAAE;cACTxE,IAAI,EAAE,QAAQ;cACdc,OAAO,EAAE;gBACRN,MAAM,EAAE;kBACPb,EAAE,EAAE,gBAAgB;kBACpBG,MAAM,EAAE;oBACPe,KAAK,EAAE;sBAAEb,IAAI,EAAE;oBAAU,CAAC;oBAC1ByE,YAAY,EAAE;sBAAEzE,IAAI,EAAE;oBAAU,CAAC;oBACjC0E,OAAO,EAAE;sBAAE1E,IAAI,EAAE;oBAAU,CAAC;oBAC5B2E,QAAQ,EAAE;sBAAE3E,IAAI,EAAE;oBAAU,CAAC;oBAC7B4E,KAAK,EAAE;sBAAE5E,IAAI,EAAE;oBAAU;kBAC1B;gBACD;cACD;YACD,CAAC;YACD6E,GAAG,EAAE;cACJ7E,IAAI,EAAE,QAAQ;cACdc,OAAO,EAAE;gBACRN,MAAM,EAAE;kBACPb,EAAE,EAAE,aAAa;kBACjBG,MAAM,EAAE;oBACP,WAAS;sBAAEE,IAAI,EAAE;oBAAU,CAAC;oBAC5B8E,SAAS,EAAE;sBACVT,KAAK,EAAE,YAAY;sBACnBC,IAAI,EAAE,6CAA6C;sBACnDtE,IAAI,EAAE;oBACP,CAAC;oBACD+E,UAAU,EAAE;sBACXV,KAAK,EAAE,aAAa;sBACpBC,IAAI,EAAE,8CAA8C;sBACpDtE,IAAI,EAAE;oBACP,CAAC;oBACDgF,MAAM,EAAE;sBACPX,KAAK,EAAE,YAAY;sBACnBC,IAAI,EAAE,mDAAmD;sBACzDtE,IAAI,EAAE;oBACP,CAAC;oBACDiF,OAAO,EAAE;sBACRZ,KAAK,EAAE,aAAa;sBACpBC,IAAI,EAAE,oCAAoC;sBAC1CtE,IAAI,EAAE;oBACP;kBACD;gBACD;cACD;YACD;UACD;QACD;MACD;IACD;EACD,CAAC;EACDJ,OAAO,EAAE;AACV,CAAC,CACD;AAED,IAAMsF,oBAAoB,GAAG,CAC5B;EACCvF,EAAE,EAAE,aAAa;EACjBS,UAAU,EAAE,iCAAiC;EAC7CF,SAAS,EAAEC,gCAAc;EACzBK,MAAM,EAAE;IACPZ,OAAO,EAAE,aAAa;IACtBD,EAAE,EAAE,aAAa;IACjBO,SAAS,EAAEC,gCAAc;IACzBL,MAAM,EAAE;MACP,WAAS;QAAEE,IAAI,EAAE;MAAU,CAAC;MAC5B8E,SAAS,EAAE;QACVT,KAAK,EAAE,YAAY;QACnBC,IAAI,EAAE,6CAA6C;QACnDtE,IAAI,EAAE;MACP,CAAC;MACD+E,UAAU,EAAE;QACXV,KAAK,EAAE,aAAa;QACpBC,IAAI,EAAE,8CAA8C;QACpDtE,IAAI,EAAE;MACP,CAAC;MACDgF,MAAM,EAAE;QACPX,KAAK,EAAE,YAAY;QACnBC,IAAI,EAAE,mDAAmD;QACzDtE,IAAI,EAAE;MACP,CAAC;MACDiF,OAAO,EAAE;QACRZ,KAAK,EAAE,aAAa;QACpBC,IAAI,EAAE,oCAAoC;QAC1CtE,IAAI,EAAE;MACP;IACD;EACD,CAAC;EACDO,YAAY,EAAE,aAAa;EAC3BF,SAAS,EAAE,aAAa;EACxBC,UAAU,EAAE,aAAa;EACzBG,QAAQ,EAAE,IAAI;EACdC,cAAc,EAAE;AACjB,CAAC,EACD;EACCf,EAAE,EAAE,gBAAgB;EACpBS,UAAU,EAAE,iCAAiC;EAC7CF,SAAS,EAAEC,gCAAc;EACzBK,MAAM,EAAE;IACPZ,OAAO,EAAE,aAAa;IACtBD,EAAE,EAAE,gBAAgB;IACpBO,SAAS,EAAEC,gCAAc;IACzBL,MAAM,EAAE;MACPe,KAAK,EAAE;QAAEb,IAAI,EAAE;MAAU,CAAC;MAC1ByE,YAAY,EAAE;QAAEzE,IAAI,EAAE;MAAU,CAAC;MACjC0E,OAAO,EAAE;QAAE1E,IAAI,EAAE;MAAU,CAAC;MAC5B2E,QAAQ,EAAE;QAAE3E,IAAI,EAAE;MAAU,CAAC;MAC7B4E,KAAK,EAAE;QAAE5E,IAAI,EAAE;MAAU;IAC1B;EACD,CAAC;EACDO,YAAY,EAAE,gBAAgB;EAC9BF,SAAS,EAAE,gBAAgB;EAC3BC,UAAU,EAAE,gBAAgB;EAC5BG,QAAQ,EAAE,IAAI;EACdC,cAAc,EAAE;AACjB,CAAC,EACD;EACCf,EAAE,EAAE,YAAY;EAChBO,SAAS,EAAEC,gCAAc;EACzBC,UAAU,EAAE,iCAAiC;EAC7CI,MAAM,EAAE;IACPZ,OAAO,EAAE,aAAa;IACtBD,EAAE,EAAE,YAAY;IAChBO,SAAS,EAAEC,gCAAc;IACzBL,MAAM,EAAE;MACPD,IAAI,EAAE;QACLG,IAAI,EAAE,MAAM;QACZqE,KAAK,EAAE,iBAAiB;QACxBR,UAAU,EAAE,IAAI;QAChBS,IAAI,EAAE;MACP,CAAC;MACDC,kBAAkB,EAAE;QACnBvE,IAAI,EAAE,SAAS;QACfqE,KAAK,EAAE,sBAAsB;QAC7BF,YAAY,EAAE;MACf,CAAC;MACDK,QAAQ,EAAE;QACTxE,IAAI,EAAE,QAAQ;QACdc,OAAO,EAAE;UACRG,SAAS,EAAE,CACV;YACCtB,EAAE,EAAE,gBAAgB;YACpBC,OAAO,EAAE,aAAa;YACtBM,SAAS,EAAEC;UACZ,CAAC;QAEH;MACD,CAAC;MACD0E,GAAG,EAAE;QACJ7E,IAAI,EAAE,QAAQ;QACdc,OAAO,EAAE;UACRG,SAAS,EAAE,CACV;YACCtB,EAAE,EAAE,aAAa;YACjBC,OAAO,EAAE,aAAa;YACtBM,SAAS,EAAEC;UACZ,CAAC;QAEH;MACD;IACD,CAAC;IACDN,IAAI,EAAE;EACP,CAAC;EACDU,YAAY,EAAE,YAAY;EAC1BF,SAAS,EAAE,YAAY;EACvBC,UAAU,EAAE,YAAY;EACxBG,QAAQ,EAAE,IAAI;EACdC,cAAc,EAAE;AACjB,CAAC,EACD;EACCf,EAAE,EAAE,oBAAoB;EACxBO,SAAS,EAAEC,gCAAc;EACzBC,UAAU,EAAE,iCAAiC;EAC7CI,MAAM,EAAE;IACPb,EAAE,EAAE,oBAAoB;IACxBE,IAAI,EAAE,qBAAqB;IAC3BK,SAAS,EAAEC,gCAAc;IACzBkC,WAAW,EAAE,EAAE;IACfvC,MAAM,EAAE;MACPoE,qBAAqB,EAAE;QAAElE,IAAI,EAAE,SAAS;QAAEmE,YAAY,EAAE;MAAM,CAAC;MAC/DC,WAAW,EAAE;QACZpE,IAAI,EAAE,QAAQ;QACd6D,UAAU,EAAE,IAAI;QAChBC,OAAO,EAAE,IAAI;QACbhD,OAAO,EAAE;UACRG,SAAS,EAAE,CACV;YACCtB,EAAE,EAAE,YAAY;YAChBC,OAAO,EAAE,aAAa;YACtBM,SAAS,EAAEC;UACZ,CAAC;QAEH;MACD;IACD,CAAC;IACDP,OAAO,EAAE;EACV,CAAC;EACDW,YAAY,EAAE,qBAAqB;EACnCF,SAAS,EAAE,oBAAoB;EAC/BC,UAAU,EAAE,oBAAoB;EAChCG,QAAQ,EAAE,KAAK;EACfC,cAAc,EAAE;AACjB,CAAC,EACD;EACCf,EAAE,EAAE,gBAAgB;EACpBO,SAAS,EAAEC,gCAAc;EACzBC,UAAU,EAAE,iCAAiC;EAC7CI,MAAM,EAAE;IACPZ,OAAO,EAAE,aAAa;IACtBD,EAAE,EAAE,gBAAgB;IACpBE,IAAI,EAAE,iBAAiB;IACvBK,SAAS,EAAEC,gCAAc;IACzBkC,WAAW,EAAE,EAAE;IACfvC,MAAM,EAAE;MACPiE,uBAAuB,EAAE;QAAE/D,IAAI,EAAE,MAAM;QAAE6D,UAAU,EAAE;MAAK,CAAC;MAC3DrB,eAAe,EAAE;QAChBxC,IAAI,EAAE,KAAK;QACXc,OAAO,EAAE;UAAE2B,SAAS,EAAE;QAAsB;MAC7C,CAAC;MACDC,WAAW,EAAE;QACZ1C,IAAI,EAAE,KAAK;QACXc,OAAO,EAAE;UAAE2B,SAAS,EAAE;QAAsB;MAC7C,CAAC;MACDuB,iBAAiB,EAAE;QAClBhE,IAAI,EAAE,QAAQ;QACd8D,OAAO,EAAE,IAAI;QACbhD,OAAO,EAAE;UACRG,SAAS,EAAE,CACV;YACCrB,OAAO,EAAE,aAAa;YACtBD,EAAE,EAAE,YAAY;YAChBO,SAAS,EAAEC;UACZ,CAAC;QAEH;MACD,CAAC;MACD8D,eAAe,EAAE;QAChBjE,IAAI,EAAE,QAAQ;QACd8D,OAAO,EAAE,IAAI;QACbhD,OAAO,EAAE;UACRG,SAAS,EAAE,CACV;YACCrB,OAAO,EAAE,aAAa;YACtBD,EAAE,EAAE,YAAY;YAChBO,SAAS,EAAEC;UACZ,CAAC;QAEH;MACD;IACD;EACD,CAAC;EACDI,YAAY,EAAE,iBAAiB;EAC/BF,SAAS,EAAE,gBAAgB;EAC3BC,UAAU,EAAE,gBAAgB;EAC5BG,QAAQ,EAAE,IAAI;EACdC,cAAc,EAAE;AACjB,CAAC,EACD;EACCf,EAAE,EAAE,iBAAiB;EACrBO,SAAS,EAAEC,gCAAc;EACzBC,UAAU,EAAE,iCAAiC;EAC7CI,MAAM,EAAE;IACPb,EAAE,EAAE,iBAAiB;IACrBE,IAAI,EAAE,kBAAkB;IACxBK,SAAS,EAAEC,gCAAc;IACzBkC,WAAW,EAAE,EAAE;IACfvC,MAAM,EAAE;MACP8D,eAAe,EAAE;QAChB5D,IAAI,EAAE,QAAQ;QACd6D,UAAU,EAAE,IAAI;QAChBC,OAAO,EAAE,IAAI;QACbhD,OAAO,EAAE;UACRG,SAAS,EAAE,CACV;YACCtB,EAAE,EAAE,gBAAgB;YACpBC,OAAO,EAAE,aAAa;YACtBM,SAAS,EAAEC;UACZ,CAAC;QAEH;MACD;IACD,CAAC;IACDP,OAAO,EAAE;EACV,CAAC;EACDW,YAAY,EAAE,kBAAkB;EAChCF,SAAS,EAAE,iBAAiB;EAC5BC,UAAU,EAAE,iBAAiB;EAC7BG,QAAQ,EAAE,KAAK;EACfC,cAAc,EAAE;AACjB,CAAC,CACD;AAED,IAAMyE,WAAW,GAAG,IAAAC,mBAAW,EAAC;EAC/BzF,EAAE,EAAE,sBAAsB;EAC1BO,SAAS,EAAE,SAAS;EACpBJ,MAAM,EAAE;IACPuF,SAAS,EAAE;MACVrF,IAAI,EAAE;IACP;EACD;AACD,CAAC,CAAC;AAEF,IAAMsF,uBAA2C,GAAG;EACnDpF,SAAS,EAAE,SAAS;EACpBP,EAAE,EAAE,sBAAsB;EAC1BU,SAAS,EAAE,sBAAsB;EACjCC,UAAU,EAAE,sBAAsB;EAClCC,YAAY,EAAE,sBAAsB;EACpCE,QAAQ,EAAE,KAAK;EACfC,cAAc,EAAE,iBAAiB;EACjCF,MAAM,EAAE2E;AACT,CAAC;AAAA,IAEoBI,6BAA6B,GAAAC,OAAA,eAAAhJ,IAAA,GAUhD,IAAAiJ,eAAI,EAAC,CAAC,EAAAhJ,KAAA,GAKN,IAAAgJ,eAAI,EAAC,CAAC,EAAA/I,KAAA,GAKN,IAAA+I,eAAI,EAAC,CAAC,EAAA9I,KAAA,GAWN,IAAA8I,eAAI,EACJ,2CAA2C,EAC3C,CAAC/F,SAAS,EAAEyB,QAAQ,CAAC,EACrB,CAACC,oBAAoB,EAAEnB,qBAAqB,CAC7C,CAAC,EAAArD,KAAA,GACA,IAAA6I,eAAI,EACJ,0CAA0C,EAC1C,CAACpE,QAAQ,CAAC,EACV,CAACQ,qBAAqB,EAAEL,oBAAoB,CAC7C,CAAC,EAAA3E,KAAA,GACA,IAAA4I,eAAI,EACJ,2CAA2C,EAC3C,CAAChE,QAAQ,CAAC,EACV,CACCd,2BAA2B,EAC3BiB,oBAAoB,EACpBV,2BAA2B,CAE7B,CAAC,EAAApE,KAAA,GACA,IAAA2I,eAAI,EACJ,qBAAqB,EACrB,CAAC/F,SAAS,EAAEA,SAAS,EAAEA,SAAS,CAAC,EACjC,CAACO,qBAAqB,CACvB,CAAC,EAAAlD,KAAA,GACA,IAAA0I,eAAI,EACJ,qCAAqC,EACrC,CAAC3D,QAAQ,EAAEL,QAAQ,EAAE/B,SAAS,EAAEkB,SAAS,CAAC,EAC1C,CACCI,qBAAqB,EACrBf,qBAAqB,EACrB2B,oBAAoB,EACpBM,oBAAoB,CAEtB,CAAC,EAAAlF,KAAA,GACA,IAAAyI,eAAI,EACJ,wDAAwD,EACxD,CAAC/F,SAAS,EAAEoC,QAAQ,EAAEL,QAAQ,EAAEb,SAAS,CAAC,EAC1C,CACCI,qBAAqB,EACrBf,qBAAqB,EACrB2B,oBAAoB,EACpBM,oBAAoB,CAEtB,CAAC,EAAAjF,MAAA,GACA,IAAAwI,eAAI,EACJ,gDAAgD,EAChD,CAACrD,qBAAqB,CAAC,EACvB,CAACW,0BAA0B,EAAED,mBAAmB,CACjD,CAAC,EAAA5F,MAAA,GACA,IAAAuI,eAAI,EACJ,iDAAiD,EACjD,CAAC5C,0BAA0B,CAAC,EAC5B,CACCI,2BAA2B,EAC3BF,0BAA0B,EAC1BC,wBAAwB,CAE1B,CAAC,EAAA7F,MAAA,GACA,IAAAsI,eAAI,EACJ,uCAAuC,EACvC,CAACvC,2BAA2B,CAAC,EAC7B,CACCQ,qBAAqB,EACrBD,uBAAuB,EACvBD,sBAAsB,EACtBD,sBAAsB,CAExB,CAAC,EAAAnG,MAAA,GACA,IAAAqI,eAAI,EAAC,4BAA4B,EAAE9B,cAAc,EAAEuB,oBAAoB,CAAC,EAAA7H,MAAA,GACxE,IAAAoI,eAAI,EACJ,iDAAiD,EACjD,CAACN,WAAW,CAAC,EACb,CAACG,uBAAuB,CAAC,EACzB,SACD,CAAC,EAAAhI,MAAA,GAqBA,IAAAmI,eAAI,EAAC,CAAC,EAAAlI,MAAA,GA4CN,IAAAkI,eAAI,EAAC,CAAC,GAAAjI,MAAA,IAAAC,8BAAA,0BAAAiI,gBAAA;EAAA,SAAAH,8BAAA;IAAA,IAAAI,gBAAA,mBAAAJ,6BAAA;IAAA,OAAA7H,UAAA,OAAA6H,6BAAA,EAAApG,SAAA;EAAA;EAAA,IAAAyG,UAAA,aAAAL,6BAAA,EAAAG,gBAAA;EAAA,WAAAG,aAAA,aAAAN,6BAAA;IAAAO,GAAA;IAAAC,KAAA;MAAA,IAAAC,WAAA,OAAAC,kBAAA,2BAAAC,YAAA,YAAAC,IAAA,CArKP,SAAAC,QAAA;QAAA,OAAAF,YAAA,YAAAG,IAAA,UAAAC,SAAAC,QAAA;UAAA,kBAAAA,QAAA,CAAAC,IAAA,GAAAD,QAAA,CAAAE,IAAA;YAAA;cAAAF,QAAA,CAAAE,IAAA;cAAA,WAAAC,KAAA,iBAAA5I,gBAAA,aAAAyH,6BAAA,uBAAA/G,IAAA;YAAA;cAEC,IAAI,CAACmI,WAAW,GAAG,IAAIC,qCAAyB,CAAC,IAAI,CAACC,eAAe,CAAC;YAAA;YAAA;cAAA,OAAAN,QAAA,CAAAO,IAAA;UAAA;QAAA,GAAAV,OAAA;MAAA,CACtE;MAAA,SAAAW,WAAA;QAAA,OAAAf,WAAA,CAAA5H,KAAA,OAAAe,SAAA;MAAA;MAAA,OAAA4H,UAAA;IAAA;EAAA;IAAAjB,GAAA;IAAAC,KAAA,EAED,SAAAiB,eAAA,EACkC;MACjCC,iBAAM,CAACC,QAAQ,CAAC,IAAI,CAACP,WAAW,CAAC;IAClC;EAAC;IAAAb,GAAA;IAAAC,KAAA,EAED,SAAAoB,oBAAA,EACuC;MACtCF,iBAAM,CAACG,UAAU,CAAC,IAAI,CAACT,WAAW,CAACU,kBAAkB,CAAC;IACvD;EAAC;IAAAvB,GAAA;IAAAC,KAAA,EAED,SAAAuB,sCAAA,EACyD;MACxD,IAAMC,OAAO,GAAG,IAAI,CAACZ,WAAW,CAACU,kBAAkB,KAAA/H,gBAAA,iBAC/Ca,gCAAc,EAAG,CAACgB,QAAQ,CAAC,GAC9B,iBACD,CAAC;MACD,IAAMqG,MAAM,GAAGD,OAAO,CAAC,CAAC,CAAC;MAEzBN,iBAAM,CAACQ,WAAW,CAACD,MAAM,EAAEpG,oBAAoB,CAAC;IACjD;EAAC;IAAA0E,GAAA;IAAAC,KAAA,EAED,SAAA2B,gBA4EC/F,OAAiB,EACjBgG,QAA8B,EAE7B;MAAA,IADDC,cAAc,GAAAzI,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAA0I,SAAA,GAAA1I,SAAA,MAAG,IAAI,CAAC0H,eAAe;MAErC,IAAI,CAACF,WAAW,GAAG,IAAIC,qCAAyB,CAACgB,cAAc,CAAC;MAEhE,IAAML,OAAO,GAAG,IAAI,CAACZ,WAAW,CAACU,kBAAkB,KAAA/H,gBAAA,iBACjDa,gCAAc,EAAGwB,OAAO,CACzB,CAAC;MAEFsF,iBAAM,CAACa,QAAQ,CAACP,OAAO,EAAEI,QAAQ,CAACvI,MAAM,CAAC;MAEzCuI,QAAQ,CAACtI,OAAO,CAAC,UAACsI,QAAQ,EAAEI,GAAG,EAAK;QACnC,IAAMC,KAAK,GAAGT,OAAO,CAACQ,GAAG,CAAC;QAC1Bd,iBAAM,CAACC,QAAQ,CAACc,KAAK,sCAAAC,MAAA,CAAsCN,QAAQ,CAAChI,EAAE,CAAE,CAAC;QACzEsH,iBAAM,CAACQ,WAAW,CAACO,KAAK,EAAEL,QAAQ,CAAC;MACpC,CAAC,CAAC;IACH;EAAC;IAAA7B,GAAA;IAAAC,KAAA,EAED,SAAAmC,YAAA,EAC+B;MAC9B,IAAMX,OAAO,GAAG,IAAI,CAACZ,WAAW,CAACU,kBAAkB,KAAA/H,gBAAA,iBAEhD,IAAI,CAACuH,eAAe,EAAG,CACvB,IAAAzB,mBAAW,EAAC;QACXzF,EAAE,EAAE,OAAO;QACXoC,gBAAgB,EAAE,CAAC,2BAA2B,CAAC;QAC/CC,iBAAiB,EAAE,CAAC,6BAA6B,CAAC;QAClDlC,MAAM,EAAE;UACPqI,SAAS,EAAE;YAAEnI,IAAI,EAAE;UAAO;QAC3B;MACD,CAAC,CAAC,CACF,GAEF,iBACD,CAAC;MAEDiH,iBAAM,CAACQ,WAAW,CAACF,OAAO,EAAE,CAC3B;QACC5H,EAAE,EAAE,OAAO;QACXO,SAAS,EAAE,gBAAgB;QAC3BM,MAAM,EAAE;UACP;UACAb,EAAE,EAAE,OAAO;UACXO,SAAS,EAAE,gBAAgB;UAC3B6B,gBAAgB,EAAE,+BAA6B;UAC/CC,iBAAiB,EAAE,iCAA+B;UAClDlC,MAAM,EAAE;YACPqI,SAAS,EAAE;cACVnI,IAAI,EAAE;YACP;UACD;QACD,CAAC;QACDO,YAAY,EAAE,OAAO;QACrBF,SAAS,EAAE,OAAO;QAClBC,UAAU,EAAE,OAAO;QACnBG,QAAQ,EAAE,KAAK;QACfC,cAAc,EAAE,iBAAiB;QACjCyB,OAAO,EAAE;MACV,CAAC,CACD,CAAC;IACH;EAAC;IAAA2D,GAAA;IAAAC,KAAA,EAED,SAAAqC,0CAAA,EAC6D;MAC5D,IAAMb,OAAO,GAAG,IAAI,CAACZ,WAAW,CAACU,kBAAkB,KAAA/H,gBAAA,iBAAAA,gBAAA,iBAEhD,IAAI,CAACuH,eAAe,EAAG,CACvB,IAAAzB,mBAAW,EAAC;QACXzF,EAAE,EAAE,OAAO;QACXoC,gBAAgB,EAAE,CAAC,2BAA2B,CAAC;QAC/CC,iBAAiB,EAAE,CAAC,6BAA6B,CAAC;QAClDlC,MAAM,EAAE;UACPqI,SAAS,EAAE;YAAEnI,IAAI,EAAE;UAAO,CAAC;UAC3BqI,MAAM,EAAE;YACPrI,IAAI,EAAE,QAAQ;YACdc,OAAO,EAAE;cACRN,MAAM,EAAE;gBAAEb,EAAE,EAAE,QAAQ;gBAAEO,SAAS,EAAE;cAAmB;YACvD;UACD,CAAC;UACDoI,KAAK,EAAE;YACNtI,IAAI,EAAE,QAAQ;YACdc,OAAO,EAAE;cACRN,MAAM,EAAE;gBAAEb,EAAE,EAAE,OAAO;gBAAEO,SAAS,EAAE,IAAI,CAAC2G;cAAgB;YACxD;UACD;QACD;MACD,CAAC,CAAC,EACF,IAAAzB,mBAAW,EAAC;QACXzF,EAAE,EAAE,QAAQ;QACZoC,gBAAgB,EAAE,CAAC,6BAA6B,CAAC;QACjDC,iBAAiB,EAAE,CAAC,+BAA+B,CAAC;QACpDlC,MAAM,EAAE;UACPqI,SAAS,EAAE;YAAEnI,IAAI,EAAE;UAAO,CAAC;UAC3BqI,MAAM,EAAE;YACPrI,IAAI,EAAE,QAAQ;YACdc,OAAO,EAAE;cACRN,MAAM,EAAE;gBAAEb,EAAE,EAAE,QAAQ;gBAAEO,SAAS,EAAE;cAAmB;YACvD;UACD;QACD;MACD,CAAC,CAAC,CACF,uBACiB,CACjB,IAAAkF,mBAAW,EAAC;QACXzF,EAAE,EAAE,QAAQ;QACZoC,gBAAgB,EAAE,CAAC,6BAA6B,CAAC;QACjDC,iBAAiB,EAAE,CAAC,+BAA+B,CAAC;QACpDlC,MAAM,EAAE;UACPqI,SAAS,EAAE;YAAEnI,IAAI,EAAE;UAAO;QAC3B;MACD,CAAC,CAAC,CACF,GAEF,iBACD,CAAC;MAEDiH,iBAAM,CAACQ,WAAW,CAACF,OAAO,EAAE,CAC3B;QACC5H,EAAE,EAAE,QAAQ;QACZO,SAAS,EAAE,kBAAkB;QAC7BM,MAAM,EAAE;UACPb,EAAE,EAAE,QAAQ;UACZO,SAAS,EAAE,kBAAkB;UAC7B6B,gBAAgB,EAAE,CAAC,6BAA6B,CAAC;UACjDC,iBAAiB,EAAE,CAAC,+BAA+B,CAAC;UACpDlC,MAAM,EAAE;YAAEqI,SAAS,EAAE;cAAEnI,IAAI,EAAE;YAAO;UAAE;QACvC,CAAC;QACDO,YAAY,EAAE,QAAQ;QACtBF,SAAS,EAAE,QAAQ;QACnBC,UAAU,EAAE,QAAQ;QACpBG,QAAQ,EAAE,KAAK;QACfC,cAAc,EAAE,iBAAiB;QACjCyB,OAAO,EAAE,CAAC,+BAA+B;MAC1C,CAAC,EACD;QACCxC,EAAE,EAAE,QAAQ;QACZO,SAAS,EAAE,gBAAgB;QAC3BM,MAAM,EAAE;UACPN,SAAS,EAAE,gBAAgB;UAC3BP,EAAE,EAAE,QAAQ;UACZoC,gBAAgB,EAAE,CAAC,6BAA6B,CAAC;UACjDC,iBAAiB,EAAE,CAAC,+BAA+B,CAAC;UACpDlC,MAAM,EAAE;YACPqI,SAAS,EAAE;cAAEnI,IAAI,EAAE;YAAO,CAAC;YAC3BqI,MAAM,EAAE;cACPrI,IAAI,EAAE,QAAQ;cACdc,OAAO,EAAE;gBACRG,SAAS,EAAE,CAAC;kBAAEtB,EAAE,EAAE,QAAQ;kBAAEO,SAAS,EAAE;gBAAmB,CAAC;cAC5D;YACD;UACD;QACD,CAAC;QACDK,YAAY,EAAE,QAAQ;QACtBF,SAAS,EAAE,QAAQ;QACnBC,UAAU,EAAE,QAAQ;QACpBG,QAAQ,EAAE,KAAK;QACfC,cAAc,EAAE,iBAAiB;QACjCyB,OAAO,EAAE,CACR,6BAA6B,EAC7B,+BAA+B;MAEjC,CAAC,EACD;QACCxC,EAAE,EAAE,OAAO;QACXO,SAAS,EAAE,gBAAgB;QAC3BM,MAAM,EAAE;UACPb,EAAE,EAAE,OAAO;UACXO,SAAS,EAAE,gBAAgB;UAC3B6B,gBAAgB,EAAE,CAAC,2BAA2B,CAAC;UAC/CC,iBAAiB,EAAE,CAAC,6BAA6B,CAAC;UAClDlC,MAAM,EAAE;YACPqI,SAAS,EAAE;cAAEnI,IAAI,EAAE;YAAO,CAAC;YAC3BqI,MAAM,EAAE;cACPrI,IAAI,EAAE,QAAQ;cACdc,OAAO,EAAE;gBACRG,SAAS,EAAE,CAAC;kBAAEtB,EAAE,EAAE,QAAQ;kBAAEO,SAAS,EAAE;gBAAmB,CAAC;cAC5D;YACD,CAAC;YACDoI,KAAK,EAAE;cACNtI,IAAI,EAAE,QAAQ;cACdc,OAAO,EAAE;gBACRG,SAAS,EAAE,CAAC;kBAAEtB,EAAE,EAAE,OAAO;kBAAEO,SAAS,EAAE;gBAAiB,CAAC;cACzD;YACD;UACD;QACD,CAAC;QACDK,YAAY,EAAE,OAAO;QACrBF,SAAS,EAAE,OAAO;QAClBC,UAAU,EAAE,OAAO;QACnBG,QAAQ,EAAE,KAAK;QACfC,cAAc,EAAE,iBAAiB;QACjCyB,OAAO,EAAE,CAAC,2BAA2B,EAAE,+BAA+B;MACvE,CAAC,CACD,CAAC;IACH;EAAC;AAAA,EA9SyDoG,4BAAe,OAAAjJ,gBAAA,aAAA7B,8BAAA,8BAAA6B,gBAAA,aAAA7B,8BAAA,qBAG/B,gBAAgB,GAAAA,8BAAA,QAAA+K,0BAAA,aAAAhL,MAAA,qBAAAhB,IAAA,GAAAmC,MAAA,CAAAI,wBAAA,CAAAvB,MAAA,qBAAAA,MAAA,OAAAgL,0BAAA,aAAAhL,MAAA,0BAAAf,KAAA,GAAAkC,MAAA,CAAAI,wBAAA,CAAAvB,MAAA,0BAAAA,MAAA,OAAAgL,0BAAA,aAAAhL,MAAA,4CAAAd,KAAA,GAAAiC,MAAA,CAAAI,wBAAA,CAAAvB,MAAA,4CAAAA,MAAA,OAAAgL,0BAAA,aAAAhL,MAAA,sBAAAb,KAAA,EAAAC,KAAA,EAAAC,KAAA,EAAAC,KAAA,EAAAC,KAAA,EAAAC,KAAA,EAAAC,MAAA,EAAAC,MAAA,EAAAC,MAAA,EAAAC,MAAA,EAAAC,MAAA,GAAAsB,MAAA,CAAAI,wBAAA,CAAAvB,MAAA,sBAAAA,MAAA,OAAAgL,0BAAA,aAAAhL,MAAA,kBAAAF,MAAA,GAAAqB,MAAA,CAAAI,wBAAA,CAAAvB,MAAA,kBAAAA,MAAA,OAAAgL,0BAAA,aAAAhL,MAAA,gDAAAD,MAAA,GAAAoB,MAAA,CAAAI,wBAAA,CAAAvB,MAAA,gDAAAA,MAAA,IAAAA,MAAA","ignoreList":[]}
|
|
@@ -40,12 +40,12 @@ var SchemaValueTypeGenerationTest = exports["default"] = (_dec = (0, _testUtils.
|
|
|
40
40
|
value: '[eventSignatureSchema_v2020_07_22, eventSignature2Schema_v2020_07_22]',
|
|
41
41
|
schemaType: "(SpruceSchemas.".concat(LOCAL_NAMESPACE, ".v2020_07_22.EventSignatureSchema | SpruceSchemas.").concat(LOCAL_NAMESPACE, ".v2020_07_22.EventSignature2Schema)[]")
|
|
42
42
|
}), (_class = (_SchemaValueTypeGenerationTest = /*#__PURE__*/function (_AbstractSchemaTest) {
|
|
43
|
-
(0, _inherits2["default"])(SchemaValueTypeGenerationTest, _AbstractSchemaTest);
|
|
44
43
|
function SchemaValueTypeGenerationTest() {
|
|
45
44
|
(0, _classCallCheck2["default"])(this, SchemaValueTypeGenerationTest);
|
|
46
45
|
return _callSuper(this, SchemaValueTypeGenerationTest, arguments);
|
|
47
46
|
}
|
|
48
|
-
(0,
|
|
47
|
+
(0, _inherits2["default"])(SchemaValueTypeGenerationTest, _AbstractSchemaTest);
|
|
48
|
+
return (0, _createClass2["default"])(SchemaValueTypeGenerationTest, null, [{
|
|
49
49
|
key: "beforeEach",
|
|
50
50
|
value: function () {
|
|
51
51
|
var _beforeEach = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
|
|
@@ -271,6 +271,5 @@ var SchemaValueTypeGenerationTest = exports["default"] = (_dec = (0, _testUtils.
|
|
|
271
271
|
return fetchAllTemplateItems;
|
|
272
272
|
}()
|
|
273
273
|
}]);
|
|
274
|
-
return SchemaValueTypeGenerationTest;
|
|
275
274
|
}(_AbstractSchemaTest2["default"]), (0, _defineProperty2["default"])(_SchemaValueTypeGenerationTest, "generator", void 0), _SchemaValueTypeGenerationTest), ((0, _applyDecoratedDescriptor2["default"])(_class, "hasGenerateMethod", [_dec], Object.getOwnPropertyDescriptor(_class, "hasGenerateMethod"), _class), (0, _applyDecoratedDescriptor2["default"])(_class, "runsWithoutBreakingWithNoArgs", [_dec2], Object.getOwnPropertyDescriptor(_class, "runsWithoutBreakingWithNoArgs"), _class), (0, _applyDecoratedDescriptor2["default"])(_class, "generatesValidTypesFile", [_dec3], Object.getOwnPropertyDescriptor(_class, "generatesValidTypesFile"), _class), (0, _applyDecoratedDescriptor2["default"])(_class, "importsTypes", [_dec4, _dec5, _dec6], Object.getOwnPropertyDescriptor(_class, "importsTypes"), _class)), _class));
|
|
276
275
|
//# sourceMappingURL=SchemaValueTypeWriter.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SchemaValueTypeWriter.test.js","names":["_spruceSkillUtils","require","_spruceTemplates","_testUtils","_SchemaWriter","_interopRequireDefault","_FieldTemplateItemBuilder","_SchemaTemplateItemBuilder","_AbstractSchemaTest2","_dec","_dec2","_dec3","_dec4","_dec5","_dec6","_class","_SchemaValueTypeGenerationTest","_callSuper","t","o","e","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","apply","Boolean","prototype","valueOf","call","LOCAL_NAMESPACE","SchemaValueTypeGenerationTest","exports","test","concat","CORE_NAMESPACE","CORE_SCHEMA_VERSION","constValue","type","value","schemaType","_AbstractSchemaTest","_inherits2","_classCallCheck2","arguments","_createClass2","key","_beforeEach","_asyncToGenerator2","_regenerator","mark","_callee","schemasDir","wrap","_callee$","_context","prev","next","_get2","generator","SchemaWriter","templates","term","ui","fileDescriptions","linter","Service","settings","installSchemaFeature","resolvePath","diskUtil","copyDir","resolveTestPath","Action","execute","stop","beforeEach","_hasGenerateMethod","_callee2","_callee2$","_context2","assert","isFunction","writeValueTypes","hasGenerateMethod","_runsWithoutBreakingWithNoArgs","_callee3","results","_callee3$","_context3","resolveHashSprucePath","schemaTemplateItems","fieldTemplateItems","sent","isTruthy","runsWithoutBreakingWithNoArgs","_generatesValidTypesFile","_callee4","first","_callee4$","_context4","generateValueTypes","isAbove","length","path","isTrue","doesFileExist","check","generatesValidTypesFile","_importsTypes","_callee5","expected","valueTypes","_callee5$","_context5","importDefault","isObject","Object","keys","doesInclude","_defineProperty2","importsTypes","_x","_x2","_generateValueTypes","_callee6","_yield$this$fetchAllT","_callee6$","_context6","fetchAllTemplateItems","writeFieldTypes","abrupt","_fetchAllTemplateItems","_callee7","schemaStore","_yield$Promise$all","_yield$Promise$all2","_yield$Promise$all2$","schemasByNamespace","schemaErrors","_yield$Promise$all2$2","fields","fieldErrors","schemaBuilder","fieldBuilder","_callee7$","_context7","StoreFactory","Store","Promise","all","fetchSchemas","localNamespace","fetchFields","_slicedToArray2","errors","isLength","SchemaTemplateItemBuilder","buildTemplateItems","FieldTemplateItemBuilder","generateTemplateItems","AbstractSchemaTest","_applyDecoratedDescriptor2","getOwnPropertyDescriptor"],"sources":["../../../src/__tests__/implementation/SchemaValueTypeWriter.test.ts"],"sourcesContent":["import { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport {\n\tCORE_NAMESPACE,\n\tCORE_SCHEMA_VERSION,\n} from '@sprucelabs/spruce-skill-utils'\nimport { templates, ValueTypes } from '@sprucelabs/spruce-templates'\nimport { assert, test } from '@sprucelabs/test-utils'\nimport SchemaWriter from '../../features/schema/writers/SchemaWriter'\nimport FieldTemplateItemBuilder from '../../templateItemBuilders/FieldTemplateItemBuilder'\nimport SchemaTemplateItemBuilder from '../../templateItemBuilders/SchemaTemplateItemBuilder'\nimport AbstractSchemaTest from '../../tests/AbstractSchemaTest'\n\nconst LOCAL_NAMESPACE = 'TacoBell'\n\nexport default class SchemaValueTypeGenerationTest extends AbstractSchemaTest {\n\tprivate static generator: SchemaWriter\n\tprotected static async beforeEach() {\n\t\tawait super.beforeEach()\n\t\tthis.generator = new SchemaWriter({\n\t\t\ttemplates,\n\t\t\tterm: this.ui,\n\t\t\tfileDescriptions: [],\n\t\t\tlinter: this.Service('lint'),\n\t\t\tsettings: this.Service('settings'),\n\t\t})\n\n\t\tawait this.installSchemaFeature('schemas')\n\n\t\tconst schemasDir = this.resolvePath('src', 'schemas')\n\t\tawait diskUtil.copyDir(this.resolveTestPath('related_schemas'), schemasDir)\n\t\tawait diskUtil.copyDir(this.resolveTestPath('test_builders'), schemasDir)\n\t\tawait diskUtil.copyDir(\n\t\t\tthis.resolveTestPath('dynamic_key_schemas'),\n\t\t\tschemasDir\n\t\t)\n\n\t\tawait this.Action('schema', 'sync').execute({})\n\t}\n\n\t@test()\n\tprotected static async hasGenerateMethod() {\n\t\tassert.isFunction(this.generator.writeValueTypes)\n\t}\n\n\t@test()\n\tprotected static async runsWithoutBreakingWithNoArgs() {\n\t\tconst results = await this.generator.writeValueTypes(\n\t\t\tthis.resolveHashSprucePath('tmp'),\n\t\t\t{\n\t\t\t\tschemaTemplateItems: [],\n\t\t\t\tfieldTemplateItems: [],\n\t\t\t}\n\t\t)\n\n\t\tassert.isTruthy(results)\n\t}\n\n\t@test()\n\tprotected static async generatesValidTypesFile() {\n\t\tconst results = await this.generateValueTypes()\n\n\t\tassert.isAbove(results.length, 0)\n\n\t\tconst first = results[0].path\n\t\tassert.isTrue(diskUtil.doesFileExist(first))\n\n\t\tawait this.Service('typeChecker').check(first)\n\t}\n\n\t@test(\n\t\t'generates person.firstName value type (string)',\n\t\t`${CORE_NAMESPACE}.person.${CORE_SCHEMA_VERSION.constValue}.firstName.valueTypes`,\n\t\t{\n\t\t\ttype: 'string',\n\t\t\tvalue: 'string',\n\t\t\tschemaType: 'string',\n\t\t}\n\t)\n\t@test(\n\t\t'generates skill.creators value type (schema)',\n\t\t`${CORE_NAMESPACE}.skill.${CORE_SCHEMA_VERSION.constValue}.creators.valueTypes`,\n\t\t{\n\t\t\ttype: `SpruceSchemas.Spruce.v2020_07_22.SkillCreator[]`,\n\t\t\tvalue: 'skillCreatorSchema_v2020_07_22',\n\t\t\tschemaType: `SpruceSchemas.Spruce.v2020_07_22.SkillCreatorSchema`,\n\t\t}\n\t)\n\t@test(\n\t\t'generates dynamic field with nested schemas',\n\t\t`${LOCAL_NAMESPACE}.mercuryContract.${CORE_SCHEMA_VERSION.constValue}.__dynamicFieldSignature.valueTypes`,\n\t\t{\n\t\t\ttype: `{ schemaId: 'eventSignature', version: 'v2020_07_22', values: SpruceSchemas.${LOCAL_NAMESPACE}.v2020_07_22.EventSignature } | { schemaId: 'eventSignature2', version: 'v2020_07_22', values: SpruceSchemas.${LOCAL_NAMESPACE}.v2020_07_22.EventSignature2 }`,\n\t\t\tvalue:\n\t\t\t\t'[eventSignatureSchema_v2020_07_22, eventSignature2Schema_v2020_07_22]',\n\t\t\tschemaType: `(SpruceSchemas.${LOCAL_NAMESPACE}.v2020_07_22.EventSignatureSchema | SpruceSchemas.${LOCAL_NAMESPACE}.v2020_07_22.EventSignature2Schema)[]`,\n\t\t}\n\t)\n\tprotected static async importsTypes(\n\t\tpath: string,\n\t\texpected: Record<string, any>\n\t) {\n\t\tconst results = await this.generateValueTypes()\n\n\t\tconst valueTypes = await this.Service('import').importDefault<ValueTypes>(\n\t\t\tresults[0].path\n\t\t)\n\n\t\tassert.isObject(valueTypes)\n\t\tassert.isAbove(\n\t\t\tObject.keys(valueTypes).length,\n\t\t\t0,\n\t\t\t'Value types came back as empty object'\n\t\t)\n\n\t\tassert.doesInclude(valueTypes, {\n\t\t\t[path]: expected,\n\t\t})\n\t}\n\n\tprivate static async generateValueTypes() {\n\t\tconst { fieldTemplateItems, schemaTemplateItems } =\n\t\t\tawait this.fetchAllTemplateItems()\n\n\t\tawait this.generator.writeFieldTypes(\n\t\t\tthis.resolveHashSprucePath('schemas'),\n\t\t\t{\n\t\t\t\tfieldTemplateItems,\n\t\t\t}\n\t\t)\n\n\t\treturn this.generator.writeValueTypes(this.resolveHashSprucePath('tmp'), {\n\t\t\tschemaTemplateItems,\n\t\t\tfieldTemplateItems,\n\t\t})\n\t}\n\n\tprivate static async fetchAllTemplateItems() {\n\t\tconst schemaStore = this.StoreFactory().Store('schema')\n\n\t\tconst [\n\t\t\t{ schemasByNamespace, errors: schemaErrors },\n\t\t\t{ fields, errors: fieldErrors },\n\t\t] = await Promise.all([\n\t\t\tschemaStore.fetchSchemas({ localNamespace: LOCAL_NAMESPACE }),\n\t\t\tschemaStore.fetchFields(),\n\t\t])\n\n\t\tassert.isLength(schemaErrors, 0)\n\t\tassert.isLength(fieldErrors, 0)\n\n\t\tconst schemaBuilder = new SchemaTemplateItemBuilder('LocalNamespace')\n\t\tconst schemaTemplateItems = schemaBuilder.buildTemplateItems(\n\t\t\tschemasByNamespace,\n\t\t\t'#spruce/schemas'\n\t\t)\n\n\t\tconst fieldBuilder = new FieldTemplateItemBuilder()\n\t\tconst fieldTemplateItems = fieldBuilder.generateTemplateItems(fields)\n\n\t\treturn {\n\t\t\tschemaTemplateItems,\n\t\t\tfieldTemplateItems,\n\t\t}\n\t}\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"SchemaValueTypeWriter.test.js","names":["_spruceSkillUtils","require","_spruceTemplates","_testUtils","_SchemaWriter","_interopRequireDefault","_FieldTemplateItemBuilder","_SchemaTemplateItemBuilder","_AbstractSchemaTest2","_dec","_dec2","_dec3","_dec4","_dec5","_dec6","_class","_SchemaValueTypeGenerationTest","_callSuper","t","o","e","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","apply","Boolean","prototype","valueOf","call","LOCAL_NAMESPACE","SchemaValueTypeGenerationTest","exports","test","concat","CORE_NAMESPACE","CORE_SCHEMA_VERSION","constValue","type","value","schemaType","_AbstractSchemaTest","_classCallCheck2","arguments","_inherits2","_createClass2","key","_beforeEach","_asyncToGenerator2","_regenerator","mark","_callee","schemasDir","wrap","_callee$","_context","prev","next","_get2","generator","SchemaWriter","templates","term","ui","fileDescriptions","linter","Service","settings","installSchemaFeature","resolvePath","diskUtil","copyDir","resolveTestPath","Action","execute","stop","beforeEach","_hasGenerateMethod","_callee2","_callee2$","_context2","assert","isFunction","writeValueTypes","hasGenerateMethod","_runsWithoutBreakingWithNoArgs","_callee3","results","_callee3$","_context3","resolveHashSprucePath","schemaTemplateItems","fieldTemplateItems","sent","isTruthy","runsWithoutBreakingWithNoArgs","_generatesValidTypesFile","_callee4","first","_callee4$","_context4","generateValueTypes","isAbove","length","path","isTrue","doesFileExist","check","generatesValidTypesFile","_importsTypes","_callee5","expected","valueTypes","_callee5$","_context5","importDefault","isObject","Object","keys","doesInclude","_defineProperty2","importsTypes","_x","_x2","_generateValueTypes","_callee6","_yield$this$fetchAllT","_callee6$","_context6","fetchAllTemplateItems","writeFieldTypes","abrupt","_fetchAllTemplateItems","_callee7","schemaStore","_yield$Promise$all","_yield$Promise$all2","_yield$Promise$all2$","schemasByNamespace","schemaErrors","_yield$Promise$all2$2","fields","fieldErrors","schemaBuilder","fieldBuilder","_callee7$","_context7","StoreFactory","Store","Promise","all","fetchSchemas","localNamespace","fetchFields","_slicedToArray2","errors","isLength","SchemaTemplateItemBuilder","buildTemplateItems","FieldTemplateItemBuilder","generateTemplateItems","AbstractSchemaTest","_applyDecoratedDescriptor2","getOwnPropertyDescriptor"],"sources":["../../../src/__tests__/implementation/SchemaValueTypeWriter.test.ts"],"sourcesContent":["import { diskUtil } from '@sprucelabs/spruce-skill-utils'\nimport {\n\tCORE_NAMESPACE,\n\tCORE_SCHEMA_VERSION,\n} from '@sprucelabs/spruce-skill-utils'\nimport { templates, ValueTypes } from '@sprucelabs/spruce-templates'\nimport { assert, test } from '@sprucelabs/test-utils'\nimport SchemaWriter from '../../features/schema/writers/SchemaWriter'\nimport FieldTemplateItemBuilder from '../../templateItemBuilders/FieldTemplateItemBuilder'\nimport SchemaTemplateItemBuilder from '../../templateItemBuilders/SchemaTemplateItemBuilder'\nimport AbstractSchemaTest from '../../tests/AbstractSchemaTest'\n\nconst LOCAL_NAMESPACE = 'TacoBell'\n\nexport default class SchemaValueTypeGenerationTest extends AbstractSchemaTest {\n\tprivate static generator: SchemaWriter\n\tprotected static async beforeEach() {\n\t\tawait super.beforeEach()\n\t\tthis.generator = new SchemaWriter({\n\t\t\ttemplates,\n\t\t\tterm: this.ui,\n\t\t\tfileDescriptions: [],\n\t\t\tlinter: this.Service('lint'),\n\t\t\tsettings: this.Service('settings'),\n\t\t})\n\n\t\tawait this.installSchemaFeature('schemas')\n\n\t\tconst schemasDir = this.resolvePath('src', 'schemas')\n\t\tawait diskUtil.copyDir(this.resolveTestPath('related_schemas'), schemasDir)\n\t\tawait diskUtil.copyDir(this.resolveTestPath('test_builders'), schemasDir)\n\t\tawait diskUtil.copyDir(\n\t\t\tthis.resolveTestPath('dynamic_key_schemas'),\n\t\t\tschemasDir\n\t\t)\n\n\t\tawait this.Action('schema', 'sync').execute({})\n\t}\n\n\t@test()\n\tprotected static async hasGenerateMethod() {\n\t\tassert.isFunction(this.generator.writeValueTypes)\n\t}\n\n\t@test()\n\tprotected static async runsWithoutBreakingWithNoArgs() {\n\t\tconst results = await this.generator.writeValueTypes(\n\t\t\tthis.resolveHashSprucePath('tmp'),\n\t\t\t{\n\t\t\t\tschemaTemplateItems: [],\n\t\t\t\tfieldTemplateItems: [],\n\t\t\t}\n\t\t)\n\n\t\tassert.isTruthy(results)\n\t}\n\n\t@test()\n\tprotected static async generatesValidTypesFile() {\n\t\tconst results = await this.generateValueTypes()\n\n\t\tassert.isAbove(results.length, 0)\n\n\t\tconst first = results[0].path\n\t\tassert.isTrue(diskUtil.doesFileExist(first))\n\n\t\tawait this.Service('typeChecker').check(first)\n\t}\n\n\t@test(\n\t\t'generates person.firstName value type (string)',\n\t\t`${CORE_NAMESPACE}.person.${CORE_SCHEMA_VERSION.constValue}.firstName.valueTypes`,\n\t\t{\n\t\t\ttype: 'string',\n\t\t\tvalue: 'string',\n\t\t\tschemaType: 'string',\n\t\t}\n\t)\n\t@test(\n\t\t'generates skill.creators value type (schema)',\n\t\t`${CORE_NAMESPACE}.skill.${CORE_SCHEMA_VERSION.constValue}.creators.valueTypes`,\n\t\t{\n\t\t\ttype: `SpruceSchemas.Spruce.v2020_07_22.SkillCreator[]`,\n\t\t\tvalue: 'skillCreatorSchema_v2020_07_22',\n\t\t\tschemaType: `SpruceSchemas.Spruce.v2020_07_22.SkillCreatorSchema`,\n\t\t}\n\t)\n\t@test(\n\t\t'generates dynamic field with nested schemas',\n\t\t`${LOCAL_NAMESPACE}.mercuryContract.${CORE_SCHEMA_VERSION.constValue}.__dynamicFieldSignature.valueTypes`,\n\t\t{\n\t\t\ttype: `{ schemaId: 'eventSignature', version: 'v2020_07_22', values: SpruceSchemas.${LOCAL_NAMESPACE}.v2020_07_22.EventSignature } | { schemaId: 'eventSignature2', version: 'v2020_07_22', values: SpruceSchemas.${LOCAL_NAMESPACE}.v2020_07_22.EventSignature2 }`,\n\t\t\tvalue:\n\t\t\t\t'[eventSignatureSchema_v2020_07_22, eventSignature2Schema_v2020_07_22]',\n\t\t\tschemaType: `(SpruceSchemas.${LOCAL_NAMESPACE}.v2020_07_22.EventSignatureSchema | SpruceSchemas.${LOCAL_NAMESPACE}.v2020_07_22.EventSignature2Schema)[]`,\n\t\t}\n\t)\n\tprotected static async importsTypes(\n\t\tpath: string,\n\t\texpected: Record<string, any>\n\t) {\n\t\tconst results = await this.generateValueTypes()\n\n\t\tconst valueTypes = await this.Service('import').importDefault<ValueTypes>(\n\t\t\tresults[0].path\n\t\t)\n\n\t\tassert.isObject(valueTypes)\n\t\tassert.isAbove(\n\t\t\tObject.keys(valueTypes).length,\n\t\t\t0,\n\t\t\t'Value types came back as empty object'\n\t\t)\n\n\t\tassert.doesInclude(valueTypes, {\n\t\t\t[path]: expected,\n\t\t})\n\t}\n\n\tprivate static async generateValueTypes() {\n\t\tconst { fieldTemplateItems, schemaTemplateItems } =\n\t\t\tawait this.fetchAllTemplateItems()\n\n\t\tawait this.generator.writeFieldTypes(\n\t\t\tthis.resolveHashSprucePath('schemas'),\n\t\t\t{\n\t\t\t\tfieldTemplateItems,\n\t\t\t}\n\t\t)\n\n\t\treturn this.generator.writeValueTypes(this.resolveHashSprucePath('tmp'), {\n\t\t\tschemaTemplateItems,\n\t\t\tfieldTemplateItems,\n\t\t})\n\t}\n\n\tprivate static async fetchAllTemplateItems() {\n\t\tconst schemaStore = this.StoreFactory().Store('schema')\n\n\t\tconst [\n\t\t\t{ schemasByNamespace, errors: schemaErrors },\n\t\t\t{ fields, errors: fieldErrors },\n\t\t] = await Promise.all([\n\t\t\tschemaStore.fetchSchemas({ localNamespace: LOCAL_NAMESPACE }),\n\t\t\tschemaStore.fetchFields(),\n\t\t])\n\n\t\tassert.isLength(schemaErrors, 0)\n\t\tassert.isLength(fieldErrors, 0)\n\n\t\tconst schemaBuilder = new SchemaTemplateItemBuilder('LocalNamespace')\n\t\tconst schemaTemplateItems = schemaBuilder.buildTemplateItems(\n\t\t\tschemasByNamespace,\n\t\t\t'#spruce/schemas'\n\t\t)\n\n\t\tconst fieldBuilder = new FieldTemplateItemBuilder()\n\t\tconst fieldTemplateItems = fieldBuilder.generateTemplateItems(fields)\n\n\t\treturn {\n\t\t\tschemaTemplateItems,\n\t\t\tfieldTemplateItems,\n\t\t}\n\t}\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -22,12 +22,12 @@ var _dec, _dec2, _class, _ServiceFactoryTest;
|
|
|
22
22
|
function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2["default"])(o), (0, _possibleConstructorReturn2["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2["default"])(t).constructor) : o.apply(t, e)); }
|
|
23
23
|
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
|
|
24
24
|
var ServiceFactoryTest = exports["default"] = (_dec = (0, _testUtils.test)('can build pin service', 'pkg', 'readPackage'), _dec2 = (0, _testUtils.test)('can build pin service', 'vsCode', 'installExtensions'), (_class = (_ServiceFactoryTest = /*#__PURE__*/function (_AbstractCliTest) {
|
|
25
|
-
(0, _inherits2["default"])(ServiceFactoryTest, _AbstractCliTest);
|
|
26
25
|
function ServiceFactoryTest() {
|
|
27
26
|
(0, _classCallCheck2["default"])(this, ServiceFactoryTest);
|
|
28
27
|
return _callSuper(this, ServiceFactoryTest, arguments);
|
|
29
28
|
}
|
|
30
|
-
(0,
|
|
29
|
+
(0, _inherits2["default"])(ServiceFactoryTest, _AbstractCliTest);
|
|
30
|
+
return (0, _createClass2["default"])(ServiceFactoryTest, null, [{
|
|
31
31
|
key: "beforeEach",
|
|
32
32
|
value: function () {
|
|
33
33
|
var _beforeEach = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
|
|
@@ -55,6 +55,5 @@ var ServiceFactoryTest = exports["default"] = (_dec = (0, _testUtils.test)('can
|
|
|
55
55
|
_testUtils.assert.hasAllFunctions(service, [functionName]);
|
|
56
56
|
}
|
|
57
57
|
}]);
|
|
58
|
-
return ServiceFactoryTest;
|
|
59
58
|
}(_AbstractCliTest2["default"]), (0, _defineProperty2["default"])(_ServiceFactoryTest, "factory", void 0), _ServiceFactoryTest), ((0, _applyDecoratedDescriptor2["default"])(_class, "canBuild", [_dec, _dec2], Object.getOwnPropertyDescriptor(_class, "canBuild"), _class)), _class));
|
|
60
59
|
//# sourceMappingURL=ServiceFactory.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ServiceFactory.test.js","names":["_testUtils","require","_ServiceFactory","_interopRequireDefault","_AbstractCliTest2","_dec","_dec2","_class","_ServiceFactoryTest","_callSuper","t","o","e","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","apply","Boolean","prototype","valueOf","call","ServiceFactoryTest","exports","test","_AbstractCliTest","
|
|
1
|
+
{"version":3,"file":"ServiceFactory.test.js","names":["_testUtils","require","_ServiceFactory","_interopRequireDefault","_AbstractCliTest2","_dec","_dec2","_class","_ServiceFactoryTest","_callSuper","t","o","e","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","apply","Boolean","prototype","valueOf","call","ServiceFactoryTest","exports","test","_AbstractCliTest","_classCallCheck2","arguments","_inherits2","_createClass2","key","value","_beforeEach","_asyncToGenerator2","_regenerator","mark","_callee","wrap","_callee$","_context","prev","next","factory","ServiceFactory","_get2","stop","beforeEach","canBuild","type","functionName","service","Service","cwd","assert","hasAllFunctions","AbstractCliTest","_defineProperty2","_applyDecoratedDescriptor2","Object","getOwnPropertyDescriptor"],"sources":["../../../src/__tests__/implementation/ServiceFactory.test.ts"],"sourcesContent":["import { test, assert } from '@sprucelabs/test-utils'\nimport ServiceFactory, { Service } from '../../services/ServiceFactory'\nimport AbstractCliTest from '../../tests/AbstractCliTest'\n\nexport default class ServiceFactoryTest extends AbstractCliTest {\n\tprivate static factory: ServiceFactory\n\n\tprotected static async beforeEach() {\n\t\tthis.factory = new ServiceFactory()\n\t\tawait super.beforeEach()\n\t}\n\n\t@test('can build pin service', 'pkg', 'readPackage')\n\t@test('can build pin service', 'vsCode', 'installExtensions')\n\tprotected static canBuild(type: Service, functionName: string) {\n\t\tconst service = this.factory.Service(this.cwd, type)\n\t\tassert.hasAllFunctions(service, [functionName])\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;AAAA,IAAAA,UAAA,GAAAC,OAAA;AACA,IAAAC,eAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,iBAAA,GAAAD,sBAAA,CAAAF,OAAA;AAAyD,IAAAI,IAAA,EAAAC,KAAA,EAAAC,MAAA,EAAAC,mBAAA;AAAA,SAAAC,WAAAC,CAAA,EAAAC,CAAA,EAAAC,CAAA,WAAAD,CAAA,OAAAE,gBAAA,aAAAF,CAAA,OAAAG,2BAAA,aAAAJ,CAAA,EAAAK,yBAAA,KAAAC,OAAA,CAAAC,SAAA,CAAAN,CAAA,EAAAC,CAAA,YAAAC,gBAAA,aAAAH,CAAA,EAAAQ,WAAA,IAAAP,CAAA,CAAAQ,KAAA,CAAAT,CAAA,EAAAE,CAAA;AAAA,SAAAG,0BAAA,cAAAL,CAAA,IAAAU,OAAA,CAAAC,SAAA,CAAAC,OAAA,CAAAC,IAAA,CAAAP,OAAA,CAAAC,SAAA,CAAAG,OAAA,iCAAAV,CAAA,aAAAK,yBAAA,YAAAA,0BAAA,aAAAL,CAAA;AAAA,IAEpCc,kBAAkB,GAAAC,OAAA,eAAApB,IAAA,GAQrC,IAAAqB,eAAI,EAAC,uBAAuB,EAAE,KAAK,EAAE,aAAa,CAAC,EAAApB,KAAA,GACnD,IAAAoB,eAAI,EAAC,uBAAuB,EAAE,QAAQ,EAAE,mBAAmB,CAAC,GAAAnB,MAAA,IAAAC,mBAAA,0BAAAmB,gBAAA;EAAA,SAAAH,mBAAA;IAAA,IAAAI,gBAAA,mBAAAJ,kBAAA;IAAA,OAAAf,UAAA,OAAAe,kBAAA,EAAAK,SAAA;EAAA;EAAA,IAAAC,UAAA,aAAAN,kBAAA,EAAAG,gBAAA;EAAA,WAAAI,aAAA,aAAAP,kBAAA;IAAAQ,GAAA;IAAAC,KAAA;MAAA,IAAAC,WAAA,OAAAC,kBAAA,2BAAAC,YAAA,YAAAC,IAAA,CAN7D,SAAAC,QAAA;QAAA,OAAAF,YAAA,YAAAG,IAAA,UAAAC,SAAAC,QAAA;UAAA,kBAAAA,QAAA,CAAAC,IAAA,GAAAD,QAAA,CAAAE,IAAA;YAAA;cACC,IAAI,CAACC,OAAO,GAAG,IAAIC,0BAAc,CAAC,CAAC;cAAAJ,QAAA,CAAAE,IAAA;cAAA,WAAAG,KAAA,iBAAAjC,gBAAA,aAAAW,kBAAA,uBAAAD,IAAA;YAAA;YAAA;cAAA,OAAAkB,QAAA,CAAAM,IAAA;UAAA;QAAA,GAAAT,OAAA;MAAA,CAEnC;MAAA,SAAAU,WAAA;QAAA,OAAAd,WAAA,CAAAf,KAAA,OAAAU,SAAA;MAAA;MAAA,OAAAmB,UAAA;IAAA;EAAA;IAAAhB,GAAA;IAAAC,KAAA,EAED,SAAAgB,SAE0BC,IAAa,EAAEC,YAAoB,EAAE;MAC9D,IAAMC,OAAO,GAAG,IAAI,CAACR,OAAO,CAACS,OAAO,CAAC,IAAI,CAACC,GAAG,EAAEJ,IAAI,CAAC;MACpDK,iBAAM,CAACC,eAAe,CAACJ,OAAO,EAAE,CAACD,YAAY,CAAC,CAAC;IAChD;EAAC;AAAA,EAb8CM,4BAAe,OAAAC,gBAAA,aAAAlD,mBAAA,sBAAAA,mBAAA,QAAAmD,0BAAA,aAAApD,MAAA,eAAAF,IAAA,EAAAC,KAAA,GAAAsD,MAAA,CAAAC,wBAAA,CAAAtD,MAAA,eAAAA,MAAA,IAAAA,MAAA","ignoreList":[]}
|
|
@@ -19,12 +19,12 @@ var _dec, _dec2, _dec3, _class;
|
|
|
19
19
|
function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2["default"])(o), (0, _possibleConstructorReturn2["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2["default"])(t).constructor) : o.apply(t, e)); }
|
|
20
20
|
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
|
|
21
21
|
var SettingUpANodeModuleTest = exports["default"] = (_dec = (0, _testUtils.test)(), _dec2 = (0, _testUtils.test)(), _dec3 = (0, _testUtils.test)(), (_class = /*#__PURE__*/function (_AbstractCliTest) {
|
|
22
|
-
(0, _inherits2["default"])(SettingUpANodeModuleTest, _AbstractCliTest);
|
|
23
22
|
function SettingUpANodeModuleTest() {
|
|
24
23
|
(0, _classCallCheck2["default"])(this, SettingUpANodeModuleTest);
|
|
25
24
|
return _callSuper(this, SettingUpANodeModuleTest, arguments);
|
|
26
25
|
}
|
|
27
|
-
(0,
|
|
26
|
+
(0, _inherits2["default"])(SettingUpANodeModuleTest, _AbstractCliTest);
|
|
27
|
+
return (0, _createClass2["default"])(SettingUpANodeModuleTest, null, [{
|
|
28
28
|
key: "settingUpANodeModule",
|
|
29
29
|
value: function () {
|
|
30
30
|
var _settingUpANodeModule = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
|
|
@@ -127,6 +127,5 @@ var SettingUpANodeModuleTest = exports["default"] = (_dec = (0, _testUtils.test)
|
|
|
127
127
|
return installsNodeModuleWithCleanedUpPackageJson;
|
|
128
128
|
}()
|
|
129
129
|
}]);
|
|
130
|
-
return SettingUpANodeModuleTest;
|
|
131
130
|
}(_AbstractCliTest2["default"]), ((0, _applyDecoratedDescriptor2["default"])(_class, "settingUpANodeModule", [_dec], Object.getOwnPropertyDescriptor(_class, "settingUpANodeModule"), _class), (0, _applyDecoratedDescriptor2["default"])(_class, "canTellIfNotInstalled", [_dec2], Object.getOwnPropertyDescriptor(_class, "canTellIfNotInstalled"), _class), (0, _applyDecoratedDescriptor2["default"])(_class, "installsNodeModuleWithCleanedUpPackageJson", [_dec3], Object.getOwnPropertyDescriptor(_class, "installsNodeModuleWithCleanedUpPackageJson"), _class)), _class));
|
|
132
131
|
//# sourceMappingURL=SettingUpANodeModule.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SettingUpANodeModule.test.js","names":["_testUtils","require","_AbstractCliTest2","_interopRequireDefault","_dec","_dec2","_dec3","_class","_callSuper","t","o","e","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","apply","Boolean","prototype","valueOf","call","SettingUpANodeModuleTest","exports","test","_AbstractCliTest","
|
|
1
|
+
{"version":3,"file":"SettingUpANodeModule.test.js","names":["_testUtils","require","_AbstractCliTest2","_interopRequireDefault","_dec","_dec2","_dec3","_class","_callSuper","t","o","e","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","apply","Boolean","prototype","valueOf","call","SettingUpANodeModuleTest","exports","test","_AbstractCliTest","_classCallCheck2","arguments","_inherits2","_createClass2","key","value","_settingUpANodeModule","_asyncToGenerator2","_regenerator","mark","_callee","cli","err","wrap","_callee$","_context","prev","next","Cli","sent","assert","doesThrowAsync","installFeatures","features","code","options","errorAssert","assertError","stop","settingUpANodeModule","_canTellIfNotInstalled","_callee2","installer","isInstalled","_callee2$","_context2","featureInstaller","isFalse","canTellIfNotInstalled","_installsNodeModuleWithCleanedUpPackageJson","_callee3","pkgService","contents","_callee3$","_context3","name","description","Service","readPackage","doesInclude","version","installsNodeModuleWithCleanedUpPackageJson","AbstractCliTest","_applyDecoratedDescriptor2","Object","getOwnPropertyDescriptor"],"sources":["../../../src/__tests__/implementation/SettingUpANodeModule.test.ts"],"sourcesContent":["import { test, assert } from '@sprucelabs/test-utils'\nimport { errorAssert } from '@sprucelabs/test-utils'\nimport AbstractCliTest from '../../tests/AbstractCliTest'\n\nexport default class SettingUpANodeModuleTest extends AbstractCliTest {\n\t@test()\n\tprotected static async settingUpANodeModule() {\n\t\tconst cli = await this.Cli()\n\t\tconst err = await assert.doesThrowAsync(() =>\n\t\t\tcli.installFeatures({\n\t\t\t\tfeatures: [\n\t\t\t\t\t{\n\t\t\t\t\t\tcode: 'node',\n\t\t\t\t\t\t//@ts-ignore\n\t\t\t\t\t\toptions: {},\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t})\n\t\t)\n\n\t\terrorAssert.assertError(err, 'VALIDATION_FAILED')\n\t}\n\n\t@test()\n\tprotected static async canTellIfNotInstalled() {\n\t\tconst installer = this.featureInstaller\n\t\tconst isInstalled = await installer.isInstalled('node')\n\t\tassert.isFalse(isInstalled)\n\t}\n\n\t@test()\n\tprotected static async installsNodeModuleWithCleanedUpPackageJson() {\n\t\tconst cli = await this.Cli()\n\n\t\tawait cli.installFeatures({\n\t\t\tfeatures: [\n\t\t\t\t{\n\t\t\t\t\tcode: 'node',\n\t\t\t\t\toptions: {\n\t\t\t\t\t\tname: 'Test module',\n\t\t\t\t\t\tdescription: 'so great!',\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t],\n\t\t})\n\n\t\tconst pkgService = this.Service('pkg')\n\t\tconst contents = pkgService.readPackage()\n\n\t\tassert.doesInclude(contents, {\n\t\t\tname: 'test-module',\n\t\t\tdescription: 'so great!',\n\t\t\tversion: '0.0.1',\n\t\t})\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;AAAA,IAAAA,UAAA,GAAAC,OAAA;AAEA,IAAAC,iBAAA,GAAAC,sBAAA,CAAAF,OAAA;AAAyD,IAAAG,IAAA,EAAAC,KAAA,EAAAC,KAAA,EAAAC,MAAA;AAAA,SAAAC,WAAAC,CAAA,EAAAC,CAAA,EAAAC,CAAA,WAAAD,CAAA,OAAAE,gBAAA,aAAAF,CAAA,OAAAG,2BAAA,aAAAJ,CAAA,EAAAK,yBAAA,KAAAC,OAAA,CAAAC,SAAA,CAAAN,CAAA,EAAAC,CAAA,YAAAC,gBAAA,aAAAH,CAAA,EAAAQ,WAAA,IAAAP,CAAA,CAAAQ,KAAA,CAAAT,CAAA,EAAAE,CAAA;AAAA,SAAAG,0BAAA,cAAAL,CAAA,IAAAU,OAAA,CAAAC,SAAA,CAAAC,OAAA,CAAAC,IAAA,CAAAP,OAAA,CAAAC,SAAA,CAAAG,OAAA,iCAAAV,CAAA,aAAAK,yBAAA,YAAAA,0BAAA,aAAAL,CAAA;AAAA,IAEpCc,wBAAwB,GAAAC,OAAA,eAAApB,IAAA,GAC3C,IAAAqB,eAAI,EAAC,CAAC,EAAApB,KAAA,GAkBN,IAAAoB,eAAI,EAAC,CAAC,EAAAnB,KAAA,GAON,IAAAmB,eAAI,EAAC,CAAC,GAAAlB,MAAA,0BAAAmB,gBAAA;EAAA,SAAAH,yBAAA;IAAA,IAAAI,gBAAA,mBAAAJ,wBAAA;IAAA,OAAAf,UAAA,OAAAe,wBAAA,EAAAK,SAAA;EAAA;EAAA,IAAAC,UAAA,aAAAN,wBAAA,EAAAG,gBAAA;EAAA,WAAAI,aAAA,aAAAP,wBAAA;IAAAQ,GAAA;IAAAC,KAAA;MAAA,IAAAC,qBAAA,OAAAC,kBAAA,2BAAAC,YAAA,YAAAC,IAAA,CAzBP,SAAAC,QAAA;QAAA,IAAAC,GAAA,EAAAC,GAAA;QAAA,OAAAJ,YAAA,YAAAK,IAAA,UAAAC,SAAAC,QAAA;UAAA,kBAAAA,QAAA,CAAAC,IAAA,GAAAD,QAAA,CAAAE,IAAA;YAAA;cAAAF,QAAA,CAAAE,IAAA;cAAA,OAEmB,IAAI,CAACC,GAAG,CAAC,CAAC;YAAA;cAAtBP,GAAG,GAAAI,QAAA,CAAAI,IAAA;cAAAJ,QAAA,CAAAE,IAAA;cAAA,OACSG,iBAAM,CAACC,cAAc,CAAC;gBAAA,OACvCV,GAAG,CAACW,eAAe,CAAC;kBACnBC,QAAQ,EAAE,CACT;oBACCC,IAAI,EAAE,MAAM;oBACZ;oBACAC,OAAO,EAAE,CAAC;kBACX,CAAC;gBAEH,CAAC,CAAC;cAAA,CACH,CAAC;YAAA;cAVKb,GAAG,GAAAG,QAAA,CAAAI,IAAA;cAYTO,sBAAW,CAACC,WAAW,CAACf,GAAG,EAAE,mBAAmB,CAAC;YAAA;YAAA;cAAA,OAAAG,QAAA,CAAAa,IAAA;UAAA;QAAA,GAAAlB,OAAA;MAAA,CACjD;MAAA,SAAAmB,qBAAA;QAAA,OAAAvB,qBAAA,CAAAf,KAAA,OAAAU,SAAA;MAAA;MAAA,OAAA4B,oBAAA;IAAA;EAAA;IAAAzB,GAAA;IAAAC,KAAA;MAAA,IAAAyB,sBAAA,OAAAvB,kBAAA,2BAAAC,YAAA,YAAAC,IAAA,CAED,SAAAsB,SAAA;QAAA,IAAAC,SAAA,EAAAC,WAAA;QAAA,OAAAzB,YAAA,YAAAK,IAAA,UAAAqB,UAAAC,SAAA;UAAA,kBAAAA,SAAA,CAAAnB,IAAA,GAAAmB,SAAA,CAAAlB,IAAA;YAAA;cAEOe,SAAS,GAAG,IAAI,CAACI,gBAAgB;cAAAD,SAAA,CAAAlB,IAAA;cAAA,OACbe,SAAS,CAACC,WAAW,CAAC,MAAM,CAAC;YAAA;cAAjDA,WAAW,GAAAE,SAAA,CAAAhB,IAAA;cACjBC,iBAAM,CAACiB,OAAO,CAACJ,WAAW,CAAC;YAAA;YAAA;cAAA,OAAAE,SAAA,CAAAP,IAAA;UAAA;QAAA,GAAAG,QAAA;MAAA,CAC3B;MAAA,SAAAO,sBAAA;QAAA,OAAAR,sBAAA,CAAAvC,KAAA,OAAAU,SAAA;MAAA;MAAA,OAAAqC,qBAAA;IAAA;EAAA;IAAAlC,GAAA;IAAAC,KAAA;MAAA,IAAAkC,2CAAA,OAAAhC,kBAAA,2BAAAC,YAAA,YAAAC,IAAA,CAED,SAAA+B,SAAA;QAAA,IAAA7B,GAAA,EAAA8B,UAAA,EAAAC,QAAA;QAAA,OAAAlC,YAAA,YAAAK,IAAA,UAAA8B,UAAAC,SAAA;UAAA,kBAAAA,SAAA,CAAA5B,IAAA,GAAA4B,SAAA,CAAA3B,IAAA;YAAA;cAAA2B,SAAA,CAAA3B,IAAA;cAAA,OAEmB,IAAI,CAACC,GAAG,CAAC,CAAC;YAAA;cAAtBP,GAAG,GAAAiC,SAAA,CAAAzB,IAAA;cAAAyB,SAAA,CAAA3B,IAAA;cAAA,OAEHN,GAAG,CAACW,eAAe,CAAC;gBACzBC,QAAQ,EAAE,CACT;kBACCC,IAAI,EAAE,MAAM;kBACZC,OAAO,EAAE;oBACRoB,IAAI,EAAE,aAAa;oBACnBC,WAAW,EAAE;kBACd;gBACD,CAAC;cAEH,CAAC,CAAC;YAAA;cAEIL,UAAU,GAAG,IAAI,CAACM,OAAO,CAAC,KAAK,CAAC;cAChCL,QAAQ,GAAGD,UAAU,CAACO,WAAW,CAAC,CAAC;cAEzC5B,iBAAM,CAAC6B,WAAW,CAACP,QAAQ,EAAE;gBAC5BG,IAAI,EAAE,aAAa;gBACnBC,WAAW,EAAE,WAAW;gBACxBI,OAAO,EAAE;cACV,CAAC,CAAC;YAAA;YAAA;cAAA,OAAAN,SAAA,CAAAhB,IAAA;UAAA;QAAA,GAAAY,QAAA;MAAA,CACF;MAAA,SAAAW,2CAAA;QAAA,OAAAZ,2CAAA,CAAAhD,KAAA,OAAAU,SAAA;MAAA;MAAA,OAAAkD,0CAAA;IAAA;EAAA;AAAA,EAlDoDC,4BAAe,QAAAC,0BAAA,aAAAzE,MAAA,2BAAAH,IAAA,GAAA6E,MAAA,CAAAC,wBAAA,CAAA3E,MAAA,2BAAAA,MAAA,OAAAyE,0BAAA,aAAAzE,MAAA,4BAAAF,KAAA,GAAA4E,MAAA,CAAAC,wBAAA,CAAA3E,MAAA,4BAAAA,MAAA,OAAAyE,0BAAA,aAAAzE,MAAA,iDAAAD,KAAA,GAAA2E,MAAA,CAAAC,wBAAA,CAAA3E,MAAA,iDAAAA,MAAA,IAAAA,MAAA","ignoreList":[]}
|