@sprucelabs/spruce-cli 19.1.26 → 19.1.28
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/.spruce/errors/options.types.d.ts +1 -1
- package/build/.spruce/events/heartwood/didRegisterSkillViews.v2021_02_11.contract.d.ts +1 -1
- package/build/.spruce/events/heartwood/generateUrl.v2021_02_11.contract.d.ts +1 -1
- package/build/.spruce/events/heartwood/getActiveTheme.v2021_02_11.contract.d.ts +1 -1
- package/build/.spruce/events/heartwood/getSkillViews.v2021_02_11.contract.d.ts +1 -1
- package/build/.spruce/events/heartwood/listViews.v2021_02_11.contract.d.ts +1 -1
- package/build/.spruce/events/heartwood/registerDashboardCards.v2021_02_11.contract.d.ts +1 -1
- package/build/.spruce/events/heartwood/registerSkillViews.v2021_02_11.contract.d.ts +1 -1
- package/build/.spruce/events/heartwood/upsertTheme.v2021_02_11.contract.d.ts +1 -1
- package/build/.spruce/events/spruceCli/registerSkillViews.v2021_04_11.contract.d.ts +1 -1
- package/build/GlobalEmitter.d.ts +2 -2
- package/build/__tests__/behavioral/onboard/StartingOnboarding.test.js +2 -2
- package/build/__tests__/behavioral/onboard/StartingOnboarding.test.js.map +1 -1
- package/build/__tests__/behavioral/schemas/UsingSchemasInCli.test.js +2 -2
- package/build/__tests__/behavioral/schemas/UsingSchemasInCli.test.js.map +1 -1
- package/build/__tests__/implementation/ArgParser.test.js +2 -2
- package/build/__tests__/implementation/ArgParser.test.js.map +1 -1
- package/build/__tests__/implementation/BulkImporting.test.js +2 -2
- package/build/__tests__/implementation/BulkImporting.test.js.map +1 -1
- package/build/__tests__/implementation/CommanderCommandResultMapper.test.js +2 -2
- package/build/__tests__/implementation/CommanderCommandResultMapper.test.js.map +1 -1
- package/build/__tests__/implementation/EventContractCleanerUtil.test.js +2 -2
- package/build/__tests__/implementation/EventContractCleanerUtil.test.js.map +1 -1
- package/build/__tests__/implementation/FeaturesUtil.test.js +2 -2
- package/build/__tests__/implementation/FeaturesUtil.test.js.map +1 -1
- package/build/__tests__/implementation/JestJsonParser.test.js +2 -2
- package/build/__tests__/implementation/JestJsonParser.test.js.map +1 -1
- package/build/__tests__/testDirsAndFiles/event_with_emit_and_response_payloads/event.options.d.ts +1 -1
- package/build/components/FormComponent.d.ts +2 -2
- package/build/components/QuizComponent.d.ts +4 -4
- package/build/features/AbstractAction.d.ts +1 -1
- package/build/features/ActionFactory.d.ts +1 -1
- package/build/features/ActionQuestionAsker.d.ts +1 -1
- package/build/features/cache/actions/DisableAction.d.ts +2 -2
- package/build/features/cache/actions/EnableAction.d.ts +2 -2
- package/build/features/conversation/actions/CreateAction.d.ts +2 -2
- package/build/features/conversation/actions/TestAction.d.ts +2 -2
- package/build/features/dependencies/actions/AddAction.d.ts +2 -2
- package/build/features/dependencies/actions/ManageAction.d.ts +1 -1
- package/build/features/deploy/actions/HerokuAction.d.ts +2 -2
- package/build/features/error/actions/CreateAction.d.ts +2 -2
- package/build/features/error/actions/SyncAction.d.ts +2 -2
- package/build/features/event/actions/CreateAction.d.ts +1 -1
- package/build/features/event/actions/ListenAction.d.ts +1 -1
- package/build/features/event/actions/SetRemoteAction.d.ts +2 -2
- package/build/features/event/actions/SyncAction.d.ts +2 -2
- package/build/features/event/actions/SyncListenersAction.d.ts +1 -1
- package/build/features/event/builders/EventContractBuilder.d.ts +2 -2
- package/build/features/event/stores/ListenerStore.d.ts +1 -1
- package/build/features/eventContract/actions/PullAction.d.ts +2 -2
- package/build/features/features.types.d.ts +4 -4
- package/build/features/log/actions/CreateTransportAction.d.ts +2 -2
- package/build/features/node/NodeFeature.d.ts +2 -2
- package/build/features/node/actions/CreateAction.d.ts +2 -2
- package/build/features/node/actions/UpdateDependenciesAction.d.ts +2 -2
- package/build/features/node/actions/UpgradeAction.d.ts +2 -2
- package/build/features/onboard/ScriptPlayer.d.ts +4 -4
- package/build/features/onboard/actions/OnboardAction.d.ts +2 -2
- package/build/features/onboard/stores/OnboardingStore.d.ts +3 -3
- package/build/features/organization/actions/CreateAction.d.ts +2 -2
- package/build/features/organization/actions/InstallAction.d.ts +2 -2
- package/build/features/permission/actions/CreateAction.d.ts +2 -2
- package/build/features/permission/actions/SyncAction.d.ts +2 -2
- package/build/features/permission/stores/PermissionStore.d.ts +1 -1
- package/build/features/person/actions/LoginAction.d.ts +2 -2
- package/build/features/person/actions/LogoutAction.d.ts +1 -1
- package/build/features/person/actions/WhoamiAction.d.ts +1 -1
- package/build/features/polish/actions/SetupAction.d.ts +1 -1
- package/build/features/sandbox/actions/SetupAction.d.ts +1 -1
- package/build/features/schema/actions/CreateAction.d.ts +2 -2
- package/build/features/schema/actions/SyncAction.d.ts +2 -2
- package/build/features/schema/actions/SyncFieldsAction.d.ts +1 -1
- package/build/features/skill/SkillFeature.d.ts +3 -3
- package/build/features/skill/actions/BootAction.d.ts +2 -2
- package/build/features/skill/actions/CreateAction.d.ts +2 -2
- package/build/features/skill/actions/DashboardAction.d.ts +1 -1
- package/build/features/skill/actions/LoginAction.d.ts +2 -2
- package/build/features/skill/actions/RebuildAction.d.ts +2 -2
- package/build/features/skill/actions/RegisterAction.d.ts +2 -2
- package/build/features/skill/updaters/Updater.d.ts +2 -2
- package/build/features/store/actions/CreateAction.d.ts +2 -2
- package/build/features/store/actions/SyncAction.d.ts +2 -2
- package/build/features/test/TestReporter.d.ts +2 -2
- package/build/features/test/TestRunner.d.ts +1 -1
- package/build/features/test/actions/CreateAction.d.ts +2 -2
- package/build/features/test/actions/SetupAction.d.ts +2 -2
- package/build/features/test/actions/TestAction.d.ts +1 -1
- package/build/features/test/test.types.d.ts +2 -2
- package/build/features/universalFileDescriptions.js +4 -0
- package/build/features/universalFileDescriptions.js.map +1 -1
- package/build/features/validateAndNormalize.utility.d.ts +1 -1
- package/build/features/view/actions/CreateAction.d.ts +1 -1
- package/build/features/view/actions/CreateThemeAction.d.ts +1 -1
- package/build/features/view/actions/SyncAction.d.ts +1 -1
- package/build/features/view/actions/WatchAction.d.ts +1 -1
- package/build/features/vscode/actions/SetupAction.d.ts +2 -2
- package/build/interfaces/SpyInterface.d.ts +2 -2
- package/build/interfaces/TerminalInterface.d.ts +1 -1
- package/build/interfaces/TerminalInterface.js +2 -2
- package/build/interfaces/TerminalInterface.js.map +1 -1
- package/build/services/ServiceFactory.d.ts +1 -1
- package/build/stores/AbstractStore.d.ts +1 -1
- package/build/stores/StoreFactory.d.ts +2 -2
- package/build/tests/AbstractCliTest.d.ts +1 -1
- package/build/tests/AbstractCliTest.js +2 -2
- package/build/tests/AbstractCliTest.js.map +1 -1
- package/build/tests/CommandFaker.d.ts +1 -1
- package/build/tests/JestJsonParser.d.ts +2 -2
- package/build/tests/MockProgramFactory.d.ts +1 -1
- package/build/tests/buildTestCache.js +1 -1
- package/build/tests/buildTestCache.js.map +1 -1
- package/build/tests/cleanTestData.js +2 -2
- package/build/tests/cleanTestData.js.map +1 -1
- package/build/types/apiClient.types.d.ts +3 -3
- package/build/types/cli.types.d.ts +10 -10
- package/build/utilities/apiClient.utility.d.ts +1 -1
- package/build/utilities/introspection.utility.d.ts +1 -1
- package/build/utilities/introspection.utility.js +2 -2
- package/build/utilities/introspection.utility.js.map +1 -1
- package/build/widgets/WidgetFactory.js.map +1 -1
- package/build/widgets/keySelectChoices.d.ts +2 -2
- package/build/widgets/terminalKit/TkBaseWidget.d.ts +2 -2
- package/build/widgets/types/button.types.d.ts +1 -1
- package/build/widgets/types/factory.types.d.ts +3 -3
- package/build/widgets/types/input.types.d.ts +1 -1
- package/build/widgets/types/layout.types.d.ts +2 -2
- package/build/widgets/types/menuBar.types.d.ts +1 -1
- package/build/widgets/types/popup.types.d.ts +1 -1
- package/build/widgets/types/text.types.d.ts +1 -1
- package/build/widgets/types/widgets.types.d.ts +2 -2
- package/build/widgets/types/window.types.d.ts +1 -1
- package/build/writers/AbstractWriter.d.ts +1 -1
- package/build/writers/WriterFactory.d.ts +1 -1
- package/package.json +41 -41
- package/src/features/universalFileDescriptions.ts +5 -0
- package/src/tests/buildTestCache.ts +4 -1
- package/src/widgets/WidgetFactory.ts +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"introspection.utility.js","names":["_lodash","_interopRequireDefault","require","tsutils","_interopRequireWildcard","ts","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_createForOfIteratorHelper","o","allowArrayLike","it","Symbol","iterator","Array","isArray","_unsupportedIterableToArray","length","i","F","s","n","done","value","e","_e","f","TypeError","normalCompletion","didErr","err","step","next","_e2","minLen","_arrayLikeToArray","toString","slice","constructor","name","from","test","arr","len","arr2","serializeSymbol","options","checker","symbol","doc","getName","documentation","displayPartsToString","getDocumentationComment","valueDeclaration","type","typeToString","getTypeOfSymbolAtLocation","serializeSignature","signature","parameters","map","p","returnType","getReturnType","introspectionUtil","introspect","tsFiles","filePaths","program","createProgram","getTypeChecker","introspects","_loop","tsFile","sourceFile","getSourceFile","results","classes","interfaces","_","includes","fileName","forEachChild","node","isClassDeclaration","getSymbolAtLocation","_parentClassSymbol","_parentClassSymbol2","_details$constructors","details","constructorType","parentClassSymbol","heritageClauses","getTypeAtLocation","types","getSymbol","parentClassName","text","parentClassPath","parent","replace","isAbstractClass","isModifierFlagSet","ModifierFlags","Abstract","constructors","getConstructSignatures","push","className","classPath","staticProperties","pluckStaticProperties","optionsInterfaceName","isAbstract","isInterfaceDeclaration","interfaceName","_default","exports","staticProps","_iterator","members","_step","_member$name","_member$initializer","member","escapedText","initializer"],"sources":["../../src/utilities/introspection.utility.ts"],"sourcesContent":["import _ from 'lodash'\nimport * as tsutils from 'tsutils'\nimport * as ts from 'typescript'\n\nexport interface IntrospectionClass {\n\tclassName: string\n\tclassPath: string\n\tparentClassName: string | undefined\n\tparentClassPath: string | undefined\n\toptionsInterfaceName: string | undefined\n\tisAbstract: boolean\n\tstaticProperties: StaticProperties\n}\n\ntype StaticProperties = Record<string, any>\n\ninterface IntrospectionInterface {\n\tinterfaceName: string\n}\n\nexport interface Introspection {\n\tclasses: IntrospectionClass[]\n\tinterfaces: IntrospectionInterface[]\n}\n\ninterface DocEntry {\n\tname?: string\n\tfileName?: string\n\tdocumentation?: string\n\ttype?: string\n\tconstructors?: DocEntry[]\n\tparameters?: DocEntry[]\n\treturnType?: string\n}\n\nconst serializeSymbol = (options: {\n\tchecker: ts.TypeChecker\n\tsymbol: ts.Symbol\n}): DocEntry => {\n\tconst { checker, symbol } = options\n\tconst doc: DocEntry = {\n\t\tname: symbol.getName(),\n\t\tdocumentation: ts.displayPartsToString(\n\t\t\tsymbol.getDocumentationComment(checker)\n\t\t),\n\t}\n\n\tif (symbol.valueDeclaration) {\n\t\tdoc.type = checker.typeToString(\n\t\t\tchecker.getTypeOfSymbolAtLocation(symbol, symbol.valueDeclaration)\n\t\t)\n\t}\n\n\treturn doc\n}\n\nconst serializeSignature = (options: {\n\tchecker: ts.TypeChecker\n\tsignature: ts.Signature\n}) => {\n\tconst { checker, signature } = options\n\treturn {\n\t\tparameters: signature.parameters.map((p) =>\n\t\t\tserializeSymbol({ symbol: p, checker })\n\t\t),\n\t\treturnType: checker.typeToString(signature.getReturnType()),\n\t\tdocumentation: ts.displayPartsToString(\n\t\t\tsignature.getDocumentationComment(checker)\n\t\t),\n\t}\n}\n\nconst introspectionUtil = {\n\tintrospect(tsFiles: string[]): Introspection[] {\n\t\tconst filePaths = tsFiles\n\t\tconst program = ts.createProgram(filePaths, {})\n\t\tconst checker = program.getTypeChecker()\n\n\t\t// for building results\n\t\tconst introspects: Introspection[] = []\n\n\t\tfor (let i = 0; i < filePaths.length; i += 1) {\n\t\t\tconst tsFile = filePaths[i]\n\t\t\tconst sourceFile = program.getSourceFile(tsFile)\n\t\t\tconst results: Introspection = { classes: [], interfaces: [] }\n\t\t\tif (sourceFile && _.includes(filePaths, sourceFile.fileName)) {\n\t\t\t\tts.forEachChild(sourceFile, (node) => {\n\t\t\t\t\t// if this is a class declaration\n\t\t\t\t\tif (ts.isClassDeclaration(node) && node.name) {\n\t\t\t\t\t\tconst symbol = checker.getSymbolAtLocation(node.name)\n\n\t\t\t\t\t\tif (symbol?.valueDeclaration) {\n\t\t\t\t\t\t\tconst details = serializeSymbol({ checker, symbol })\n\t\t\t\t\t\t\t// Get the construct signatures\n\t\t\t\t\t\t\tconst constructorType = checker.getTypeOfSymbolAtLocation(\n\t\t\t\t\t\t\t\tsymbol,\n\t\t\t\t\t\t\t\tsymbol.valueDeclaration\n\t\t\t\t\t\t\t)\n\n\t\t\t\t\t\t\tlet parentClassSymbol: ts.Symbol | undefined\n\t\t\t\t\t\t\tif (node.heritageClauses && node.heritageClauses[0]) {\n\t\t\t\t\t\t\t\tparentClassSymbol = checker\n\t\t\t\t\t\t\t\t\t.getTypeAtLocation(node.heritageClauses[0].types[0])\n\t\t\t\t\t\t\t\t\t.getSymbol()\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tconst parentClassName =\n\t\t\t\t\t\t\t\t// @ts-ignore\n\t\t\t\t\t\t\t\tparentClassSymbol?.valueDeclaration?.name?.text\n\t\t\t\t\t\t\t// @ts-ignore\n\t\t\t\t\t\t\tconst parentClassPath = parentClassSymbol?.parent\n\t\t\t\t\t\t\t\t?.getName()\n\t\t\t\t\t\t\t\t.replace('\"', '')\n\n\t\t\t\t\t\t\tconst isAbstractClass = tsutils.isModifierFlagSet(\n\t\t\t\t\t\t\t\tnode,\n\t\t\t\t\t\t\t\tts.ModifierFlags.Abstract\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\tdetails.constructors = constructorType\n\t\t\t\t\t\t\t\t.getConstructSignatures()\n\t\t\t\t\t\t\t\t.map((s) => serializeSignature({ signature: s, checker }))\n\n\t\t\t\t\t\t\tresults.classes.push({\n\t\t\t\t\t\t\t\tclassName: node.name.text,\n\t\t\t\t\t\t\t\tclassPath: sourceFile.fileName,\n\t\t\t\t\t\t\t\tparentClassName,\n\t\t\t\t\t\t\t\tparentClassPath,\n\t\t\t\t\t\t\t\tstaticProperties: pluckStaticProperties(node),\n\t\t\t\t\t\t\t\toptionsInterfaceName:\n\t\t\t\t\t\t\t\t\tdetails.constructors?.[0].parameters?.[0]?.type,\n\t\t\t\t\t\t\t\tisAbstract: isAbstractClass,\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t}\n\t\t\t\t\t} else if (ts.isInterfaceDeclaration(node)) {\n\t\t\t\t\t\tresults.interfaces.push({\n\t\t\t\t\t\t\tinterfaceName: node.name.text,\n\t\t\t\t\t\t})\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t}\n\n\t\t\tintrospects.push(results)\n\t\t}\n\n\t\treturn introspects\n\t},\n}\n\nexport default introspectionUtil\n\nfunction pluckStaticProperties(node: ts.ClassDeclaration): StaticProperties {\n\tconst staticProps: StaticProperties = {}\n\n\tfor (const member of node.members) {\n\t\t//@ts-ignore\n\t\tconst name = member.name?.escapedText\n\t\t//@ts-ignore\n\t\tconst value = member.initializer?.text\n\n\t\tif (name && value) {\n\t\t\tstaticProps[name] = value\n\t\t}\n\t}\n\n\treturn staticProps\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"introspection.utility.js","names":["_lodash","_interopRequireDefault","require","tsutils","_interopRequireWildcard","ts","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","_createForOfIteratorHelper","o","allowArrayLike","it","Symbol","iterator","Array","isArray","_unsupportedIterableToArray","length","F","s","done","value","_e","f","TypeError","normalCompletion","didErr","err","step","next","_e2","minLen","_arrayLikeToArray","toString","slice","constructor","name","from","test","arr","len","arr2","serializeSymbol","options","checker","symbol","doc","getName","documentation","displayPartsToString","getDocumentationComment","valueDeclaration","type","typeToString","getTypeOfSymbolAtLocation","serializeSignature","signature","parameters","map","p","returnType","getReturnType","introspectionUtil","introspect","tsFiles","filePaths","program","createProgram","getTypeChecker","introspects","_loop","tsFile","sourceFile","getSourceFile","results","classes","interfaces","_","includes","fileName","forEachChild","node","isClassDeclaration","getSymbolAtLocation","_parentClassSymbol","_parentClassSymbol2","_details$constructors","details","constructorType","parentClassSymbol","heritageClauses","getTypeAtLocation","types","getSymbol","parentClassName","text","parentClassPath","parent","replace","isAbstractClass","isModifierFlagSet","ModifierFlags","Abstract","constructors","getConstructSignatures","push","className","classPath","staticProperties","pluckStaticProperties","optionsInterfaceName","isAbstract","isInterfaceDeclaration","interfaceName","_default","exports","staticProps","_iterator","members","_step","_member$name","_member$initializer","member","escapedText","initializer"],"sources":["../../src/utilities/introspection.utility.ts"],"sourcesContent":["import _ from 'lodash'\nimport * as tsutils from 'tsutils'\nimport * as ts from 'typescript'\n\nexport interface IntrospectionClass {\n\tclassName: string\n\tclassPath: string\n\tparentClassName: string | undefined\n\tparentClassPath: string | undefined\n\toptionsInterfaceName: string | undefined\n\tisAbstract: boolean\n\tstaticProperties: StaticProperties\n}\n\ntype StaticProperties = Record<string, any>\n\ninterface IntrospectionInterface {\n\tinterfaceName: string\n}\n\nexport interface Introspection {\n\tclasses: IntrospectionClass[]\n\tinterfaces: IntrospectionInterface[]\n}\n\ninterface DocEntry {\n\tname?: string\n\tfileName?: string\n\tdocumentation?: string\n\ttype?: string\n\tconstructors?: DocEntry[]\n\tparameters?: DocEntry[]\n\treturnType?: string\n}\n\nconst serializeSymbol = (options: {\n\tchecker: ts.TypeChecker\n\tsymbol: ts.Symbol\n}): DocEntry => {\n\tconst { checker, symbol } = options\n\tconst doc: DocEntry = {\n\t\tname: symbol.getName(),\n\t\tdocumentation: ts.displayPartsToString(\n\t\t\tsymbol.getDocumentationComment(checker)\n\t\t),\n\t}\n\n\tif (symbol.valueDeclaration) {\n\t\tdoc.type = checker.typeToString(\n\t\t\tchecker.getTypeOfSymbolAtLocation(symbol, symbol.valueDeclaration)\n\t\t)\n\t}\n\n\treturn doc\n}\n\nconst serializeSignature = (options: {\n\tchecker: ts.TypeChecker\n\tsignature: ts.Signature\n}) => {\n\tconst { checker, signature } = options\n\treturn {\n\t\tparameters: signature.parameters.map((p) =>\n\t\t\tserializeSymbol({ symbol: p, checker })\n\t\t),\n\t\treturnType: checker.typeToString(signature.getReturnType()),\n\t\tdocumentation: ts.displayPartsToString(\n\t\t\tsignature.getDocumentationComment(checker)\n\t\t),\n\t}\n}\n\nconst introspectionUtil = {\n\tintrospect(tsFiles: string[]): Introspection[] {\n\t\tconst filePaths = tsFiles\n\t\tconst program = ts.createProgram(filePaths, {})\n\t\tconst checker = program.getTypeChecker()\n\n\t\t// for building results\n\t\tconst introspects: Introspection[] = []\n\n\t\tfor (let i = 0; i < filePaths.length; i += 1) {\n\t\t\tconst tsFile = filePaths[i]\n\t\t\tconst sourceFile = program.getSourceFile(tsFile)\n\t\t\tconst results: Introspection = { classes: [], interfaces: [] }\n\t\t\tif (sourceFile && _.includes(filePaths, sourceFile.fileName)) {\n\t\t\t\tts.forEachChild(sourceFile, (node) => {\n\t\t\t\t\t// if this is a class declaration\n\t\t\t\t\tif (ts.isClassDeclaration(node) && node.name) {\n\t\t\t\t\t\tconst symbol = checker.getSymbolAtLocation(node.name)\n\n\t\t\t\t\t\tif (symbol?.valueDeclaration) {\n\t\t\t\t\t\t\tconst details = serializeSymbol({ checker, symbol })\n\t\t\t\t\t\t\t// Get the construct signatures\n\t\t\t\t\t\t\tconst constructorType = checker.getTypeOfSymbolAtLocation(\n\t\t\t\t\t\t\t\tsymbol,\n\t\t\t\t\t\t\t\tsymbol.valueDeclaration\n\t\t\t\t\t\t\t)\n\n\t\t\t\t\t\t\tlet parentClassSymbol: ts.Symbol | undefined\n\t\t\t\t\t\t\tif (node.heritageClauses && node.heritageClauses[0]) {\n\t\t\t\t\t\t\t\tparentClassSymbol = checker\n\t\t\t\t\t\t\t\t\t.getTypeAtLocation(node.heritageClauses[0].types[0])\n\t\t\t\t\t\t\t\t\t.getSymbol()\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tconst parentClassName =\n\t\t\t\t\t\t\t\t// @ts-ignore\n\t\t\t\t\t\t\t\tparentClassSymbol?.valueDeclaration?.name?.text\n\t\t\t\t\t\t\t// @ts-ignore\n\t\t\t\t\t\t\tconst parentClassPath = parentClassSymbol?.parent\n\t\t\t\t\t\t\t\t?.getName()\n\t\t\t\t\t\t\t\t.replace('\"', '')\n\n\t\t\t\t\t\t\tconst isAbstractClass = tsutils.isModifierFlagSet(\n\t\t\t\t\t\t\t\tnode,\n\t\t\t\t\t\t\t\tts.ModifierFlags.Abstract\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\tdetails.constructors = constructorType\n\t\t\t\t\t\t\t\t.getConstructSignatures()\n\t\t\t\t\t\t\t\t.map((s) => serializeSignature({ signature: s, checker }))\n\n\t\t\t\t\t\t\tresults.classes.push({\n\t\t\t\t\t\t\t\tclassName: node.name.text,\n\t\t\t\t\t\t\t\tclassPath: sourceFile.fileName,\n\t\t\t\t\t\t\t\tparentClassName,\n\t\t\t\t\t\t\t\tparentClassPath,\n\t\t\t\t\t\t\t\tstaticProperties: pluckStaticProperties(node),\n\t\t\t\t\t\t\t\toptionsInterfaceName:\n\t\t\t\t\t\t\t\t\tdetails.constructors?.[0].parameters?.[0]?.type,\n\t\t\t\t\t\t\t\tisAbstract: isAbstractClass,\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t}\n\t\t\t\t\t} else if (ts.isInterfaceDeclaration(node)) {\n\t\t\t\t\t\tresults.interfaces.push({\n\t\t\t\t\t\t\tinterfaceName: node.name.text,\n\t\t\t\t\t\t})\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t}\n\n\t\t\tintrospects.push(results)\n\t\t}\n\n\t\treturn introspects\n\t},\n}\n\nexport default introspectionUtil\n\nfunction pluckStaticProperties(node: ts.ClassDeclaration): StaticProperties {\n\tconst staticProps: StaticProperties = {}\n\n\tfor (const member of node.members) {\n\t\t//@ts-ignore\n\t\tconst name = member.name?.escapedText\n\t\t//@ts-ignore\n\t\tconst value = member.initializer?.text\n\n\t\tif (name && value) {\n\t\t\tstaticProps[name] = value\n\t\t}\n\t}\n\n\treturn staticProps\n}\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WidgetFactory.js","names":["_terminalKit","_interopRequireDefault","require","_factory","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","termKit","terminal_kit","WidgetFactory","exports","_classCallCheck2","term","terminal","_createClass2","key","value","Widget","type","options","Class","widgetRegistry","instance","eventContract","contractRegistry"],"sources":["../../src/widgets/WidgetFactory.ts"],"sourcesContent":["import terminal_kit, { Terminal } from 'terminal-kit'\nimport {\n\tcontractRegistry,\n\tFactoryOptions,\n\twidgetRegistry,\n\tWidgetRegistry,\n\tWidgetType,\n} from './types/factory.types'\nconst termKit = terminal_kit as any\n\nexport default class WidgetFactory {\n\tprivate term: Terminal\n\tpublic constructor() {\n\t\tthis.term = termKit.terminal\n\t}\n\n\tpublic Widget<T extends WidgetType>(\n\t\ttype: T,\n\t\toptions: FactoryOptions<T>\n\t): WidgetRegistry[T] {\n\t\tconst Class = widgetRegistry[type]\n\n\t\t//@ts-ignore\n\t\tconst instance = new Class({\n\t\t\t...options,\n\t\t\tterm: this.term,\n\t\t\teventContract: contractRegistry[type],\n\t\t})\n\n\t\t//@ts-ignore\n\t\treturn instance\n\t}\n}\n"],"mappings":";;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AAM8B,SAAAE,QAAAC,CAAA,EAAAC,CAAA,QAAAC,CAAA,GAAAC,MAAA,CAAAC,IAAA,CAAAJ,CAAA,OAAAG,MAAA,CAAAE,qBAAA,QAAAC,CAAA,GAAAH,MAAA,CAAAE,qBAAA,CAAAL,CAAA,GAAAC,CAAA,KAAAK,CAAA,GAAAA,CAAA,CAAAC,MAAA,WAAAN,CAAA,WAAAE,MAAA,CAAAK,wBAAA,CAAAR,CAAA,EAAAC,CAAA,EAAAQ,UAAA,OAAAP,CAAA,CAAAQ,IAAA,CAAAC,KAAA,CAAAT,CAAA,EAAAI,CAAA,YAAAJ,CAAA;AAAA,SAAAU,cAAAZ,CAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAY,SAAA,CAAAC,MAAA,EAAAb,CAAA,UAAAC,CAAA,WAAAW,SAAA,CAAAZ,CAAA,IAAAY,SAAA,CAAAZ,CAAA,QAAAA,CAAA,OAAAF,OAAA,CAAAI,MAAA,CAAAD,CAAA,OAAAa,OAAA,WAAAd,CAAA,QAAAe,gBAAA,aAAAhB,CAAA,EAAAC,CAAA,EAAAC,CAAA,CAAAD,CAAA,SAAAE,MAAA,CAAAc,yBAAA,GAAAd,MAAA,CAAAe,gBAAA,CAAAlB,CAAA,EAAAG,MAAA,CAAAc,yBAAA,CAAAf,CAAA,KAAAH,OAAA,CAAAI,MAAA,CAAAD,CAAA,GAAAa,OAAA,WAAAd,CAAA,IAAAE,MAAA,CAAAgB,cAAA,CAAAnB,CAAA,EAAAC,CAAA,EAAAE,MAAA,CAAAK,wBAAA,CAAAN,CAAA,EAAAD,CAAA,iBAAAD,CAAA;AAC9B,IAAMoB,OAAO,GAAGC,uBAAmB;AAAA,IAEdC,aAAa,GAAAC,OAAA;EAEjC,SAAAD,cAAA,EAAqB;IAAA,IAAAE,gBAAA,mBAAAF,aAAA;IAAA,IAAAN,gBAAA;IACpB,IAAI,CAACS,IAAI,GAAGL,OAAO,CAACM,QAAQ;EAC7B;EAAC,IAAAC,aAAA,aAAAL,aAAA;IAAAM,GAAA;IAAAC,KAAA,EAED,SAAAC,OACCC,IAAO,EACPC,OAA0B,EACN;MACpB,IAAMC,KAAK,GAAGC,uBAAc,CAACH,IAAI,CAAC;;MAElC;MACA,IAAMI,QAAQ,GAAG,IAAIF,KAAK,CAAArB,aAAA,CAAAA,aAAA,KACtBoB,OAAO;QACVP,IAAI,EAAE,IAAI,CAACA,IAAI;QACfW,aAAa,EAAEC,yBAAgB,CAACN,IAAI;
|
|
1
|
+
{"version":3,"file":"WidgetFactory.js","names":["_terminalKit","_interopRequireDefault","require","_factory","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","termKit","terminal_kit","WidgetFactory","exports","_classCallCheck2","term","terminal","_createClass2","key","value","Widget","type","options","Class","widgetRegistry","instance","eventContract","contractRegistry"],"sources":["../../src/widgets/WidgetFactory.ts"],"sourcesContent":["import terminal_kit, { Terminal } from 'terminal-kit'\nimport {\n\tcontractRegistry,\n\tFactoryOptions,\n\twidgetRegistry,\n\tWidgetRegistry,\n\tWidgetType,\n} from './types/factory.types'\nconst termKit = terminal_kit as any\n\nexport default class WidgetFactory {\n\tprivate term: Terminal\n\tpublic constructor() {\n\t\tthis.term = termKit.terminal\n\t}\n\n\tpublic Widget<T extends WidgetType>(\n\t\ttype: T,\n\t\toptions: FactoryOptions<T>\n\t): WidgetRegistry[T] {\n\t\tconst Class = widgetRegistry[type]\n\n\t\t//@ts-ignore\n\t\tconst instance = new Class({\n\t\t\t...options,\n\t\t\tterm: this.term,\n\t\t\teventContract: contractRegistry[type] as any,\n\t\t})\n\n\t\t//@ts-ignore\n\t\treturn instance\n\t}\n}\n"],"mappings":";;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AAM8B,SAAAE,QAAAC,CAAA,EAAAC,CAAA,QAAAC,CAAA,GAAAC,MAAA,CAAAC,IAAA,CAAAJ,CAAA,OAAAG,MAAA,CAAAE,qBAAA,QAAAC,CAAA,GAAAH,MAAA,CAAAE,qBAAA,CAAAL,CAAA,GAAAC,CAAA,KAAAK,CAAA,GAAAA,CAAA,CAAAC,MAAA,WAAAN,CAAA,WAAAE,MAAA,CAAAK,wBAAA,CAAAR,CAAA,EAAAC,CAAA,EAAAQ,UAAA,OAAAP,CAAA,CAAAQ,IAAA,CAAAC,KAAA,CAAAT,CAAA,EAAAI,CAAA,YAAAJ,CAAA;AAAA,SAAAU,cAAAZ,CAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAY,SAAA,CAAAC,MAAA,EAAAb,CAAA,UAAAC,CAAA,WAAAW,SAAA,CAAAZ,CAAA,IAAAY,SAAA,CAAAZ,CAAA,QAAAA,CAAA,OAAAF,OAAA,CAAAI,MAAA,CAAAD,CAAA,OAAAa,OAAA,WAAAd,CAAA,QAAAe,gBAAA,aAAAhB,CAAA,EAAAC,CAAA,EAAAC,CAAA,CAAAD,CAAA,SAAAE,MAAA,CAAAc,yBAAA,GAAAd,MAAA,CAAAe,gBAAA,CAAAlB,CAAA,EAAAG,MAAA,CAAAc,yBAAA,CAAAf,CAAA,KAAAH,OAAA,CAAAI,MAAA,CAAAD,CAAA,GAAAa,OAAA,WAAAd,CAAA,IAAAE,MAAA,CAAAgB,cAAA,CAAAnB,CAAA,EAAAC,CAAA,EAAAE,MAAA,CAAAK,wBAAA,CAAAN,CAAA,EAAAD,CAAA,iBAAAD,CAAA;AAC9B,IAAMoB,OAAO,GAAGC,uBAAmB;AAAA,IAEdC,aAAa,GAAAC,OAAA;EAEjC,SAAAD,cAAA,EAAqB;IAAA,IAAAE,gBAAA,mBAAAF,aAAA;IAAA,IAAAN,gBAAA;IACpB,IAAI,CAACS,IAAI,GAAGL,OAAO,CAACM,QAAQ;EAC7B;EAAC,IAAAC,aAAA,aAAAL,aAAA;IAAAM,GAAA;IAAAC,KAAA,EAED,SAAAC,OACCC,IAAO,EACPC,OAA0B,EACN;MACpB,IAAMC,KAAK,GAAGC,uBAAc,CAACH,IAAI,CAAC;;MAElC;MACA,IAAMI,QAAQ,GAAG,IAAIF,KAAK,CAAArB,aAAA,CAAAA,aAAA,KACtBoB,OAAO;QACVP,IAAI,EAAE,IAAI,CAACA,IAAI;QACfW,aAAa,EAAEC,yBAAgB,CAACN,IAAI;MAAQ,EAC5C,CAAC;;MAEF;MACA,OAAOI,QAAQ;IAChB;EAAC;EAAA,OAAAb,aAAA;AAAA"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
type KeySelectChoices = [
|
|
2
2
|
{
|
|
3
3
|
label: 'ESCAPE';
|
|
4
4
|
value: 'ESCAPE';
|
|
@@ -1120,6 +1120,6 @@ declare type KeySelectChoices = [
|
|
|
1120
1120
|
value: 'Z';
|
|
1121
1121
|
}
|
|
1122
1122
|
];
|
|
1123
|
-
export
|
|
1123
|
+
export type Key = KeySelectChoices[number]['value'];
|
|
1124
1124
|
declare const keySelectChoices: KeySelectChoices;
|
|
1125
1125
|
export default keySelectChoices;
|
|
@@ -2,10 +2,10 @@ import { AbstractEventEmitter } from '@sprucelabs/mercury-event-emitter';
|
|
|
2
2
|
import { EventContract } from '@sprucelabs/mercury-types';
|
|
3
3
|
import { Terminal } from 'terminal-kit';
|
|
4
4
|
import { BaseWidget, UniversalWidgetOptions, WidgetFrame, WidgetFrameCalculated, WidgetPadding } from '../types/widgets.types';
|
|
5
|
-
export
|
|
5
|
+
export type BaseWidgetWithTermKitAddons = BaseWidget & {
|
|
6
6
|
getTermKitElement: () => any | null;
|
|
7
7
|
};
|
|
8
|
-
export
|
|
8
|
+
export type TkWidgetOptions = UniversalWidgetOptions & {
|
|
9
9
|
term: Terminal;
|
|
10
10
|
parent: BaseWidgetWithTermKitAddons;
|
|
11
11
|
};
|
|
@@ -16,9 +16,9 @@ import { ProgressBarWidgetOptions, ProgressBarWidget } from './progressBar.types
|
|
|
16
16
|
import { TextWidgetOptions, TextWidget } from './text.types';
|
|
17
17
|
import { UniversalWidgetOptions } from './widgets.types';
|
|
18
18
|
import { WindowWidgetOptions, WindowWidget } from './window.types';
|
|
19
|
-
export
|
|
20
|
-
export
|
|
21
|
-
export
|
|
19
|
+
export type WidgetType = keyof WidgetRegistry;
|
|
20
|
+
export type Widget<T extends WidgetType = WidgetType> = WidgetRegistry[T];
|
|
21
|
+
export type FactoryOptions<T extends WidgetType> = UniversalWidgetOptions & OptionsMap[T];
|
|
22
22
|
interface OptionsMap {
|
|
23
23
|
text: TextWidgetOptions;
|
|
24
24
|
window: WindowWidgetOptions;
|
|
@@ -18,7 +18,7 @@ export declare const inputEventContract: {
|
|
|
18
18
|
cancel: {};
|
|
19
19
|
};
|
|
20
20
|
};
|
|
21
|
-
export
|
|
21
|
+
export type InputEventContract = typeof inputEventContract;
|
|
22
22
|
export interface InputWidgetOptions {
|
|
23
23
|
value?: string;
|
|
24
24
|
label?: string;
|
|
@@ -2,12 +2,12 @@ import { WidgetFrameAttribute, BaseWidget } from './widgets.types';
|
|
|
2
2
|
export interface LayoutWidgetOptions {
|
|
3
3
|
rows: LayoutRow[];
|
|
4
4
|
}
|
|
5
|
-
export
|
|
5
|
+
export type LayoutRow = {
|
|
6
6
|
id?: string;
|
|
7
7
|
columns: LayoutColumn[];
|
|
8
8
|
height?: WidgetFrameAttribute;
|
|
9
9
|
};
|
|
10
|
-
export
|
|
10
|
+
export type LayoutColumn = {
|
|
11
11
|
id: string;
|
|
12
12
|
width?: WidgetFrameAttribute;
|
|
13
13
|
};
|
|
@@ -14,7 +14,7 @@ export declare const menuBarEventContract: {
|
|
|
14
14
|
};
|
|
15
15
|
};
|
|
16
16
|
};
|
|
17
|
-
export
|
|
17
|
+
export type MenuBarEventContract = typeof menuBarEventContract;
|
|
18
18
|
export interface MenuBarWidgetOptions {
|
|
19
19
|
items: MenuBarWidgetItem[];
|
|
20
20
|
}
|
|
@@ -21,7 +21,7 @@ export declare const textEventContract: {
|
|
|
21
21
|
};
|
|
22
22
|
};
|
|
23
23
|
};
|
|
24
|
-
export
|
|
24
|
+
export type TextEventContract = typeof textEventContract;
|
|
25
25
|
export interface TextWidgetOptions {
|
|
26
26
|
isScrollEnabled?: boolean;
|
|
27
27
|
shouldAutoScrollWhenAppendingContent?: boolean;
|
|
@@ -21,7 +21,7 @@ export interface BaseWidget<Contract extends EventContract = any> extends Mercur
|
|
|
21
21
|
addChild(child: BaseWidget): void;
|
|
22
22
|
removeChild(child: BaseWidget): void;
|
|
23
23
|
}
|
|
24
|
-
export
|
|
24
|
+
export type Color = 'black' | 'red' | 'green' | 'yellow' | 'blue' | 'magenta' | 'cyan' | 'white' | 'gray' | 'brightRed' | 'brightGreen' | 'brightYellow' | 'brightBlue' | 'brightMagenta' | 'brightCyan' | 'brightWhite';
|
|
25
25
|
export interface UniversalWidgetOptions {
|
|
26
26
|
id?: string;
|
|
27
27
|
width?: WidgetFrameAttribute;
|
|
@@ -50,4 +50,4 @@ export interface WidgetFrameCalculated {
|
|
|
50
50
|
width: number;
|
|
51
51
|
height: number;
|
|
52
52
|
}
|
|
53
|
-
export
|
|
53
|
+
export type WidgetFrameAttribute = number | string;
|
|
@@ -40,7 +40,7 @@ export declare const windowEventContract: {
|
|
|
40
40
|
};
|
|
41
41
|
};
|
|
42
42
|
};
|
|
43
|
-
export
|
|
43
|
+
export type WindowEventContract = typeof windowEventContract;
|
|
44
44
|
export interface WindowWidgetOptions {
|
|
45
45
|
}
|
|
46
46
|
export interface WindowWidget extends BaseWidget<WindowEventContract> {
|
|
@@ -3,7 +3,7 @@ import { DirectoryTemplateCode, Templates } from '@sprucelabs/spruce-templates';
|
|
|
3
3
|
import LintService from '../services/LintService';
|
|
4
4
|
import { FileDescription, GeneratedFile, UpgradeMode } from '../types/cli.types';
|
|
5
5
|
import { GraphicsInterface } from '../types/cli.types';
|
|
6
|
-
export
|
|
6
|
+
export type WriteResults = GeneratedFile[];
|
|
7
7
|
export interface WriterOptions {
|
|
8
8
|
templates: Templates;
|
|
9
9
|
term: GraphicsInterface;
|
|
@@ -36,7 +36,7 @@ export interface WriterMap {
|
|
|
36
36
|
polish: PolishWriter;
|
|
37
37
|
permission: PermissionWriter;
|
|
38
38
|
}
|
|
39
|
-
export
|
|
39
|
+
export type WriterCode = keyof WriterMap;
|
|
40
40
|
export default class WriterFactory {
|
|
41
41
|
private templates;
|
|
42
42
|
private ui;
|
package/package.json
CHANGED
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
]
|
|
18
18
|
},
|
|
19
19
|
"license": "MIT",
|
|
20
|
-
"version": "19.1.
|
|
20
|
+
"version": "19.1.28",
|
|
21
21
|
"bin": {
|
|
22
22
|
"spruce": "./build/index.js"
|
|
23
23
|
},
|
|
@@ -72,21 +72,21 @@
|
|
|
72
72
|
},
|
|
73
73
|
"dependencies": {
|
|
74
74
|
"@babel/cli": "^7.23.0",
|
|
75
|
-
"@babel/plugin-proposal-decorators": "^7.23.
|
|
76
|
-
"@babel/runtime": "^7.23.
|
|
75
|
+
"@babel/plugin-proposal-decorators": "^7.23.2",
|
|
76
|
+
"@babel/runtime": "^7.23.2",
|
|
77
77
|
"@jest/reporters": "^29.7.0",
|
|
78
|
-
"@sprucelabs/error": "^5.1.
|
|
78
|
+
"@sprucelabs/error": "^5.1.37",
|
|
79
79
|
"@sprucelabs/globby": "^1.0.3",
|
|
80
|
-
"@sprucelabs/heartwood-view-controllers": "^107.2.
|
|
81
|
-
"@sprucelabs/jest-json-reporter": "^7.0.
|
|
82
|
-
"@sprucelabs/mercury-client": "^41.0.
|
|
83
|
-
"@sprucelabs/mercury-event-emitter": "^41.0.
|
|
84
|
-
"@sprucelabs/mercury-types": "^46.0.
|
|
85
|
-
"@sprucelabs/schema": "^29.0.
|
|
86
|
-
"@sprucelabs/spruce-core-schemas": "^39.0.
|
|
87
|
-
"@sprucelabs/spruce-event-utils": "^38.0.
|
|
88
|
-
"@sprucelabs/spruce-skill-utils": "^30.
|
|
89
|
-
"@sprucelabs/spruce-templates": "^19.1.
|
|
80
|
+
"@sprucelabs/heartwood-view-controllers": "^107.2.85",
|
|
81
|
+
"@sprucelabs/jest-json-reporter": "^7.0.112",
|
|
82
|
+
"@sprucelabs/mercury-client": "^41.0.116",
|
|
83
|
+
"@sprucelabs/mercury-event-emitter": "^41.0.116",
|
|
84
|
+
"@sprucelabs/mercury-types": "^46.0.102",
|
|
85
|
+
"@sprucelabs/schema": "^29.0.73",
|
|
86
|
+
"@sprucelabs/spruce-core-schemas": "^39.0.108",
|
|
87
|
+
"@sprucelabs/spruce-event-utils": "^38.0.122",
|
|
88
|
+
"@sprucelabs/spruce-skill-utils": "^30.1.6",
|
|
89
|
+
"@sprucelabs/spruce-templates": "^19.1.28",
|
|
90
90
|
"@typescript-eslint/eslint-plugin": "^5.27.1",
|
|
91
91
|
"@typescript-eslint/parser": "^5.27.1",
|
|
92
92
|
"cfonts": "^3.2.0",
|
|
@@ -109,40 +109,40 @@
|
|
|
109
109
|
"terminal-kit": "sprucelabsai/terminal-kit",
|
|
110
110
|
"tree-kill": "^1.2.2",
|
|
111
111
|
"tsutils": "^3.21.0",
|
|
112
|
-
"typescript": "
|
|
112
|
+
"typescript": "^5.2.2",
|
|
113
113
|
"uuid": "^9.0.1"
|
|
114
114
|
},
|
|
115
115
|
"devDependencies": {
|
|
116
|
-
"@sprucelabs/data-stores": "^25.0
|
|
116
|
+
"@sprucelabs/data-stores": "^25.4.0",
|
|
117
117
|
"@sprucelabs/jest-sheets-reporter": "^3.0.26",
|
|
118
|
-
"@sprucelabs/mercury-core-events": "^22.0.
|
|
119
|
-
"@sprucelabs/resolve-path-aliases": "^1.1.
|
|
120
|
-
"@sprucelabs/spruce-conversation-plugin": "^60.
|
|
121
|
-
"@sprucelabs/spruce-deploy-plugin": "^60.
|
|
122
|
-
"@sprucelabs/spruce-store-plugin": "^60.
|
|
123
|
-
"@sprucelabs/spruce-test-fixtures": "^60.
|
|
124
|
-
"@sprucelabs/test": "^8.0.
|
|
125
|
-
"@sprucelabs/test-utils": "^4.0.
|
|
126
|
-
"@types/blessed": "^0.1.
|
|
127
|
-
"@types/eslint": "^8.44.
|
|
128
|
-
"@types/fs-extra": "^11.0.
|
|
118
|
+
"@sprucelabs/mercury-core-events": "^22.0.113",
|
|
119
|
+
"@sprucelabs/resolve-path-aliases": "^1.1.254",
|
|
120
|
+
"@sprucelabs/spruce-conversation-plugin": "^60.1.8",
|
|
121
|
+
"@sprucelabs/spruce-deploy-plugin": "^60.1.8",
|
|
122
|
+
"@sprucelabs/spruce-store-plugin": "^60.1.8",
|
|
123
|
+
"@sprucelabs/spruce-test-fixtures": "^60.1.8",
|
|
124
|
+
"@sprucelabs/test": "^8.0.22",
|
|
125
|
+
"@sprucelabs/test-utils": "^4.0.62",
|
|
126
|
+
"@types/blessed": "^0.1.24",
|
|
127
|
+
"@types/eslint": "^8.44.6",
|
|
128
|
+
"@types/fs-extra": "^11.0.3",
|
|
129
129
|
"@types/inquirer": "^8.2.1",
|
|
130
|
-
"@types/lodash": "^4.14.
|
|
131
|
-
"@types/md5": "^2.3.
|
|
132
|
-
"@types/node": "^20.
|
|
133
|
-
"@types/promise.allsettled": "^1.0.
|
|
134
|
-
"@types/ps-node": "^0.1.
|
|
135
|
-
"@types/semver": "^7.5.
|
|
136
|
-
"@types/sha1": "^1.1.
|
|
137
|
-
"@types/slug": "^5.0.
|
|
138
|
-
"@types/superagent": "^4.1.
|
|
139
|
-
"@types/terminal-kit": "^2.5.
|
|
140
|
-
"@types/uuid": "^9.0.
|
|
130
|
+
"@types/lodash": "^4.14.200",
|
|
131
|
+
"@types/md5": "^2.3.4",
|
|
132
|
+
"@types/node": "^20.8.9",
|
|
133
|
+
"@types/promise.allsettled": "^1.0.5",
|
|
134
|
+
"@types/ps-node": "^0.1.2",
|
|
135
|
+
"@types/semver": "^7.5.4",
|
|
136
|
+
"@types/sha1": "^1.1.4",
|
|
137
|
+
"@types/slug": "^5.0.6",
|
|
138
|
+
"@types/superagent": "^4.1.20",
|
|
139
|
+
"@types/terminal-kit": "^2.5.3",
|
|
140
|
+
"@types/uuid": "^9.0.6",
|
|
141
141
|
"chokidar-cli": "^3.0.0",
|
|
142
|
-
"concurrently": "^8.2.
|
|
142
|
+
"concurrently": "^8.2.2",
|
|
143
143
|
"conventional-changelog-sprucelabs": "^1.1.2",
|
|
144
144
|
"dotenv": "^16.3.1",
|
|
145
|
-
"eslint": "^8.
|
|
145
|
+
"eslint": "^8.52.0",
|
|
146
146
|
"eslint-config-spruce": "^10.13.6",
|
|
147
147
|
"find-process": "^1.4.7",
|
|
148
148
|
"jest": "^29.7.0",
|
|
@@ -590,5 +590,5 @@
|
|
|
590
590
|
"terminal-kit"
|
|
591
591
|
]
|
|
592
592
|
},
|
|
593
|
-
"gitHead": "
|
|
593
|
+
"gitHead": "f08de0f40792307a61cfeeae8f1c926e435e7c0a"
|
|
594
594
|
}
|
|
@@ -16,6 +16,11 @@ const universalFileDescriptions: FileDescription[] = [
|
|
|
16
16
|
description: 'The usual suspects.',
|
|
17
17
|
shouldOverwriteWhenChanged: false,
|
|
18
18
|
},
|
|
19
|
+
{
|
|
20
|
+
path: '.npmignore',
|
|
21
|
+
description: 'Came out of nowhere!',
|
|
22
|
+
shouldOverwriteWhenChanged: false,
|
|
23
|
+
},
|
|
19
24
|
{
|
|
20
25
|
path: '.nvmrc',
|
|
21
26
|
description: 'Keep node at the latest.',
|
|
@@ -33,7 +33,10 @@ const onlyInstall = testSkillsToCache?.split(',').map((t) => t.trim()) as
|
|
|
33
33
|
const shouldRunSequentially = !!process.argv.find(
|
|
34
34
|
(a) => a === '--shouldRunSequentially=true' || a === '--shouldRunSequentially'
|
|
35
35
|
)
|
|
36
|
-
const maxSimultaneous =
|
|
36
|
+
const maxSimultaneous = parseInt(
|
|
37
|
+
process.env.MAX_SIMULTANEOUS_SKILL_CACHERS ?? '10',
|
|
38
|
+
10
|
|
39
|
+
)
|
|
37
40
|
let totalSimultaneous = 0
|
|
38
41
|
let progressInterval: any
|
|
39
42
|
const doesSupportColor = TerminalInterface.doesSupportColor()
|