@hyperfrontend/project-scope 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/ARCHITECTURE.md +370 -0
- package/CHANGELOG.md +10 -0
- package/FUNDING.md +141 -0
- package/LICENSE.md +21 -0
- package/README.md +242 -0
- package/SECURITY.md +82 -0
- package/analyze.d.ts +33 -0
- package/analyze.d.ts.map +1 -0
- package/cli/commands/analyze.d.ts +20 -0
- package/cli/commands/analyze.d.ts.map +1 -0
- package/cli/commands/config.d.ts +20 -0
- package/cli/commands/config.d.ts.map +1 -0
- package/cli/commands/deps.d.ts +18 -0
- package/cli/commands/deps.d.ts.map +1 -0
- package/cli/commands/tree.d.ts +24 -0
- package/cli/commands/tree.d.ts.map +1 -0
- package/cli/index.cjs.js +6639 -0
- package/cli/index.cjs.js.map +1 -0
- package/cli/index.d.ts +7 -0
- package/cli/index.d.ts.map +1 -0
- package/cli/index.esm.js +6629 -0
- package/cli/index.esm.js.map +1 -0
- package/cli/run.d.ts +25 -0
- package/cli/run.d.ts.map +1 -0
- package/cli/types.d.ts +55 -0
- package/cli/types.d.ts.map +1 -0
- package/core/cache.d.ts +157 -0
- package/core/cache.d.ts.map +1 -0
- package/core/encoding/convert.d.ts +32 -0
- package/core/encoding/convert.d.ts.map +1 -0
- package/core/encoding/detect.d.ts +86 -0
- package/core/encoding/detect.d.ts.map +1 -0
- package/core/encoding/index.cjs.js +751 -0
- package/core/encoding/index.cjs.js.map +1 -0
- package/core/encoding/index.d.ts +3 -0
- package/core/encoding/index.d.ts.map +1 -0
- package/core/encoding/index.esm.js +736 -0
- package/core/encoding/index.esm.js.map +1 -0
- package/core/errors/structured-errors.d.ts +64 -0
- package/core/errors/structured-errors.d.ts.map +1 -0
- package/core/fs/directory.d.ts +88 -0
- package/core/fs/directory.d.ts.map +1 -0
- package/core/fs/index.cjs.js +1079 -0
- package/core/fs/index.cjs.js.map +1 -0
- package/core/fs/index.d.ts +6 -0
- package/core/fs/index.d.ts.map +1 -0
- package/core/fs/index.esm.js +1056 -0
- package/core/fs/index.esm.js.map +1 -0
- package/core/fs/read.d.ts +86 -0
- package/core/fs/read.d.ts.map +1 -0
- package/core/fs/stat.d.ts +58 -0
- package/core/fs/stat.d.ts.map +1 -0
- package/core/fs/traversal.d.ts +26 -0
- package/core/fs/traversal.d.ts.map +1 -0
- package/core/fs/write.d.ts +75 -0
- package/core/fs/write.d.ts.map +1 -0
- package/core/index.cjs.js +2376 -0
- package/core/index.cjs.js.map +1 -0
- package/core/index.d.ts +9 -0
- package/core/index.d.ts.map +1 -0
- package/core/index.esm.js +2286 -0
- package/core/index.esm.js.map +1 -0
- package/core/logger.d.ts +111 -0
- package/core/logger.d.ts.map +1 -0
- package/core/path/index.cjs.js +254 -0
- package/core/path/index.cjs.js.map +1 -0
- package/core/path/index.d.ts +5 -0
- package/core/path/index.d.ts.map +1 -0
- package/core/path/index.esm.js +233 -0
- package/core/path/index.esm.js.map +1 -0
- package/core/path/join.d.ts +17 -0
- package/core/path/join.d.ts.map +1 -0
- package/core/path/normalize.d.ts +37 -0
- package/core/path/normalize.d.ts.map +1 -0
- package/core/path/resolve.d.ts +52 -0
- package/core/path/resolve.d.ts.map +1 -0
- package/core/path/segments.d.ts +59 -0
- package/core/path/segments.d.ts.map +1 -0
- package/core/patterns/glob.d.ts +46 -0
- package/core/patterns/glob.d.ts.map +1 -0
- package/core/platform/detect.d.ts +66 -0
- package/core/platform/detect.d.ts.map +1 -0
- package/core/platform/index.cjs.js +241 -0
- package/core/platform/index.cjs.js.map +1 -0
- package/core/platform/index.d.ts +3 -0
- package/core/platform/index.d.ts.map +1 -0
- package/core/platform/index.esm.js +226 -0
- package/core/platform/index.esm.js.map +1 -0
- package/core/platform/line-endings.d.ts +48 -0
- package/core/platform/line-endings.d.ts.map +1 -0
- package/heuristics/dependencies/analyze.d.ts +77 -0
- package/heuristics/dependencies/analyze.d.ts.map +1 -0
- package/heuristics/dependencies/index.cjs.js +1126 -0
- package/heuristics/dependencies/index.cjs.js.map +1 -0
- package/heuristics/dependencies/index.d.ts +2 -0
- package/heuristics/dependencies/index.d.ts.map +1 -0
- package/heuristics/dependencies/index.esm.js +1122 -0
- package/heuristics/dependencies/index.esm.js.map +1 -0
- package/heuristics/entry-points/discover.d.ts +86 -0
- package/heuristics/entry-points/discover.d.ts.map +1 -0
- package/heuristics/entry-points/index.cjs.js +1581 -0
- package/heuristics/entry-points/index.cjs.js.map +1 -0
- package/heuristics/entry-points/index.d.ts +2 -0
- package/heuristics/entry-points/index.d.ts.map +1 -0
- package/heuristics/entry-points/index.esm.js +1577 -0
- package/heuristics/entry-points/index.esm.js.map +1 -0
- package/heuristics/framework/identify.d.ts +84 -0
- package/heuristics/framework/identify.d.ts.map +1 -0
- package/heuristics/framework/index.cjs.js +3618 -0
- package/heuristics/framework/index.cjs.js.map +1 -0
- package/heuristics/framework/index.d.ts +2 -0
- package/heuristics/framework/index.d.ts.map +1 -0
- package/heuristics/framework/index.esm.js +3614 -0
- package/heuristics/framework/index.esm.js.map +1 -0
- package/heuristics/index.cjs.js +4833 -0
- package/heuristics/index.cjs.js.map +1 -0
- package/heuristics/index.d.ts +5 -0
- package/heuristics/index.d.ts.map +1 -0
- package/heuristics/index.esm.js +4822 -0
- package/heuristics/index.esm.js.map +1 -0
- package/heuristics/project-type/detect.d.ts +61 -0
- package/heuristics/project-type/detect.d.ts.map +1 -0
- package/heuristics/project-type/index.cjs.js +3633 -0
- package/heuristics/project-type/index.cjs.js.map +1 -0
- package/heuristics/project-type/index.d.ts +2 -0
- package/heuristics/project-type/index.d.ts.map +1 -0
- package/heuristics/project-type/index.esm.js +3631 -0
- package/heuristics/project-type/index.esm.js.map +1 -0
- package/index.cjs.js +10255 -0
- package/index.cjs.js.map +1 -0
- package/index.d.ts +10 -0
- package/index.d.ts.map +1 -0
- package/index.esm.js +10006 -0
- package/index.esm.js.map +1 -0
- package/models/index.cjs.js +3 -0
- package/models/index.cjs.js.map +1 -0
- package/models/index.d.ts +176 -0
- package/models/index.d.ts.map +1 -0
- package/models/index.esm.js +2 -0
- package/models/index.esm.js.map +1 -0
- package/nx/detect.d.ts +105 -0
- package/nx/detect.d.ts.map +1 -0
- package/nx/devkit-loader.d.ts +62 -0
- package/nx/devkit-loader.d.ts.map +1 -0
- package/nx/index.cjs.js +1302 -0
- package/nx/index.cjs.js.map +1 -0
- package/nx/index.d.ts +4 -0
- package/nx/index.d.ts.map +1 -0
- package/nx/index.esm.js +1286 -0
- package/nx/index.esm.js.map +1 -0
- package/nx/project-config.d.ts +109 -0
- package/nx/project-config.d.ts.map +1 -0
- package/package.json +218 -0
- package/project/config/detect.d.ts +77 -0
- package/project/config/detect.d.ts.map +1 -0
- package/project/config/index.cjs.js +1982 -0
- package/project/config/index.cjs.js.map +1 -0
- package/project/config/index.d.ts +4 -0
- package/project/config/index.d.ts.map +1 -0
- package/project/config/index.esm.js +1971 -0
- package/project/config/index.esm.js.map +1 -0
- package/project/config/parse.d.ts +53 -0
- package/project/config/parse.d.ts.map +1 -0
- package/project/config/patterns.d.ts +31 -0
- package/project/config/patterns.d.ts.map +1 -0
- package/project/index.cjs.js +2585 -0
- package/project/index.cjs.js.map +1 -0
- package/project/index.d.ts +5 -0
- package/project/index.d.ts.map +1 -0
- package/project/index.esm.js +2549 -0
- package/project/index.esm.js.map +1 -0
- package/project/package/dependencies.d.ts +101 -0
- package/project/package/dependencies.d.ts.map +1 -0
- package/project/package/index.cjs.js +972 -0
- package/project/package/index.cjs.js.map +1 -0
- package/project/package/index.d.ts +3 -0
- package/project/package/index.d.ts.map +1 -0
- package/project/package/index.esm.js +957 -0
- package/project/package/index.esm.js.map +1 -0
- package/project/package/read.d.ts +66 -0
- package/project/package/read.d.ts.map +1 -0
- package/project/root/detect.d.ts +65 -0
- package/project/root/detect.d.ts.map +1 -0
- package/project/root/index.cjs.js +860 -0
- package/project/root/index.cjs.js.map +1 -0
- package/project/root/index.d.ts +2 -0
- package/project/root/index.d.ts.map +1 -0
- package/project/root/index.esm.js +853 -0
- package/project/root/index.esm.js.map +1 -0
- package/project/traversal/index.cjs.js +1179 -0
- package/project/traversal/index.cjs.js.map +1 -0
- package/project/traversal/index.d.ts +3 -0
- package/project/traversal/index.d.ts.map +1 -0
- package/project/traversal/index.esm.js +1173 -0
- package/project/traversal/index.esm.js.map +1 -0
- package/project/traversal/search.d.ts +59 -0
- package/project/traversal/search.d.ts.map +1 -0
- package/project/traversal/walk.d.ts +63 -0
- package/project/traversal/walk.d.ts.map +1 -0
- package/tech/backend/detect-all.d.ts +13 -0
- package/tech/backend/detect-all.d.ts.map +1 -0
- package/tech/backend/express.d.ts +11 -0
- package/tech/backend/express.d.ts.map +1 -0
- package/tech/backend/fastify.d.ts +11 -0
- package/tech/backend/fastify.d.ts.map +1 -0
- package/tech/backend/hono.d.ts +11 -0
- package/tech/backend/hono.d.ts.map +1 -0
- package/tech/backend/index.cjs.js +939 -0
- package/tech/backend/index.cjs.js.map +1 -0
- package/tech/backend/index.d.ts +8 -0
- package/tech/backend/index.d.ts.map +1 -0
- package/tech/backend/index.esm.js +931 -0
- package/tech/backend/index.esm.js.map +1 -0
- package/tech/backend/koa.d.ts +11 -0
- package/tech/backend/koa.d.ts.map +1 -0
- package/tech/backend/nestjs.d.ts +11 -0
- package/tech/backend/nestjs.d.ts.map +1 -0
- package/tech/backend/types.d.ts +31 -0
- package/tech/backend/types.d.ts.map +1 -0
- package/tech/build/babel.d.ts +13 -0
- package/tech/build/babel.d.ts.map +1 -0
- package/tech/build/detect-all.d.ts +13 -0
- package/tech/build/detect-all.d.ts.map +1 -0
- package/tech/build/esbuild.d.ts +11 -0
- package/tech/build/esbuild.d.ts.map +1 -0
- package/tech/build/index.cjs.js +1118 -0
- package/tech/build/index.cjs.js.map +1 -0
- package/tech/build/index.d.ts +10 -0
- package/tech/build/index.d.ts.map +1 -0
- package/tech/build/index.esm.js +1102 -0
- package/tech/build/index.esm.js.map +1 -0
- package/tech/build/parcel.d.ts +13 -0
- package/tech/build/parcel.d.ts.map +1 -0
- package/tech/build/rollup.d.ts +13 -0
- package/tech/build/rollup.d.ts.map +1 -0
- package/tech/build/swc.d.ts +13 -0
- package/tech/build/swc.d.ts.map +1 -0
- package/tech/build/types.d.ts +31 -0
- package/tech/build/types.d.ts.map +1 -0
- package/tech/build/vite.d.ts +13 -0
- package/tech/build/vite.d.ts.map +1 -0
- package/tech/build/webpack.d.ts +13 -0
- package/tech/build/webpack.d.ts.map +1 -0
- package/tech/frontend/angular.d.ts +11 -0
- package/tech/frontend/angular.d.ts.map +1 -0
- package/tech/frontend/astro.d.ts +11 -0
- package/tech/frontend/astro.d.ts.map +1 -0
- package/tech/frontend/detect-all.d.ts +13 -0
- package/tech/frontend/detect-all.d.ts.map +1 -0
- package/tech/frontend/gatsby.d.ts +11 -0
- package/tech/frontend/gatsby.d.ts.map +1 -0
- package/tech/frontend/index.cjs.js +1310 -0
- package/tech/frontend/index.cjs.js.map +1 -0
- package/tech/frontend/index.d.ts +15 -0
- package/tech/frontend/index.d.ts.map +1 -0
- package/tech/frontend/index.esm.js +1295 -0
- package/tech/frontend/index.esm.js.map +1 -0
- package/tech/frontend/nextjs.d.ts +11 -0
- package/tech/frontend/nextjs.d.ts.map +1 -0
- package/tech/frontend/nuxt.d.ts +11 -0
- package/tech/frontend/nuxt.d.ts.map +1 -0
- package/tech/frontend/qwik.d.ts +11 -0
- package/tech/frontend/qwik.d.ts.map +1 -0
- package/tech/frontend/react.d.ts +11 -0
- package/tech/frontend/react.d.ts.map +1 -0
- package/tech/frontend/remix.d.ts +11 -0
- package/tech/frontend/remix.d.ts.map +1 -0
- package/tech/frontend/solid.d.ts +11 -0
- package/tech/frontend/solid.d.ts.map +1 -0
- package/tech/frontend/svelte.d.ts +11 -0
- package/tech/frontend/svelte.d.ts.map +1 -0
- package/tech/frontend/sveltekit.d.ts +11 -0
- package/tech/frontend/sveltekit.d.ts.map +1 -0
- package/tech/frontend/types.d.ts +35 -0
- package/tech/frontend/types.d.ts.map +1 -0
- package/tech/frontend/vue.d.ts +11 -0
- package/tech/frontend/vue.d.ts.map +1 -0
- package/tech/index.cjs.js +3684 -0
- package/tech/index.cjs.js.map +1 -0
- package/tech/index.d.ts +96 -0
- package/tech/index.d.ts.map +1 -0
- package/tech/index.esm.js +3603 -0
- package/tech/index.esm.js.map +1 -0
- package/tech/legacy/angularjs.d.ts +12 -0
- package/tech/legacy/angularjs.d.ts.map +1 -0
- package/tech/legacy/backbone.d.ts +11 -0
- package/tech/legacy/backbone.d.ts.map +1 -0
- package/tech/legacy/detect-all.d.ts +13 -0
- package/tech/legacy/detect-all.d.ts.map +1 -0
- package/tech/legacy/ember.d.ts +11 -0
- package/tech/legacy/ember.d.ts.map +1 -0
- package/tech/legacy/index.cjs.js +903 -0
- package/tech/legacy/index.cjs.js.map +1 -0
- package/tech/legacy/index.d.ts +7 -0
- package/tech/legacy/index.d.ts.map +1 -0
- package/tech/legacy/index.esm.js +896 -0
- package/tech/legacy/index.esm.js.map +1 -0
- package/tech/legacy/jquery.d.ts +11 -0
- package/tech/legacy/jquery.d.ts.map +1 -0
- package/tech/legacy/types.d.ts +33 -0
- package/tech/legacy/types.d.ts.map +1 -0
- package/tech/linting/biome.d.ts +11 -0
- package/tech/linting/biome.d.ts.map +1 -0
- package/tech/linting/detect-all.d.ts +13 -0
- package/tech/linting/detect-all.d.ts.map +1 -0
- package/tech/linting/eslint.d.ts +13 -0
- package/tech/linting/eslint.d.ts.map +1 -0
- package/tech/linting/index.cjs.js +992 -0
- package/tech/linting/index.cjs.js.map +1 -0
- package/tech/linting/index.d.ts +7 -0
- package/tech/linting/index.d.ts.map +1 -0
- package/tech/linting/index.esm.js +982 -0
- package/tech/linting/index.esm.js.map +1 -0
- package/tech/linting/prettier.d.ts +13 -0
- package/tech/linting/prettier.d.ts.map +1 -0
- package/tech/linting/stylelint.d.ts +13 -0
- package/tech/linting/stylelint.d.ts.map +1 -0
- package/tech/linting/types.d.ts +31 -0
- package/tech/linting/types.d.ts.map +1 -0
- package/tech/monorepo/detect-all.d.ts +13 -0
- package/tech/monorepo/detect-all.d.ts.map +1 -0
- package/tech/monorepo/index.cjs.js +1021 -0
- package/tech/monorepo/index.cjs.js.map +1 -0
- package/tech/monorepo/index.d.ts +10 -0
- package/tech/monorepo/index.d.ts.map +1 -0
- package/tech/monorepo/index.esm.js +1011 -0
- package/tech/monorepo/index.esm.js.map +1 -0
- package/tech/monorepo/lerna.d.ts +11 -0
- package/tech/monorepo/lerna.d.ts.map +1 -0
- package/tech/monorepo/npm-workspaces.d.ts +11 -0
- package/tech/monorepo/npm-workspaces.d.ts.map +1 -0
- package/tech/monorepo/nx.d.ts +11 -0
- package/tech/monorepo/nx.d.ts.map +1 -0
- package/tech/monorepo/pnpm-workspaces.d.ts +9 -0
- package/tech/monorepo/pnpm-workspaces.d.ts.map +1 -0
- package/tech/monorepo/rush.d.ts +11 -0
- package/tech/monorepo/rush.d.ts.map +1 -0
- package/tech/monorepo/turborepo.d.ts +11 -0
- package/tech/monorepo/turborepo.d.ts.map +1 -0
- package/tech/monorepo/types.d.ts +39 -0
- package/tech/monorepo/types.d.ts.map +1 -0
- package/tech/monorepo/yarn-workspaces.d.ts +11 -0
- package/tech/monorepo/yarn-workspaces.d.ts.map +1 -0
- package/tech/shared-utils/detector-helpers.d.ts +52 -0
- package/tech/shared-utils/detector-helpers.d.ts.map +1 -0
- package/tech/shared-utils/types.d.ts +41 -0
- package/tech/shared-utils/types.d.ts.map +1 -0
- package/tech/testing/cypress.d.ts +13 -0
- package/tech/testing/cypress.d.ts.map +1 -0
- package/tech/testing/detect-all.d.ts +13 -0
- package/tech/testing/detect-all.d.ts.map +1 -0
- package/tech/testing/index.cjs.js +1031 -0
- package/tech/testing/index.cjs.js.map +1 -0
- package/tech/testing/index.d.ts +8 -0
- package/tech/testing/index.d.ts.map +1 -0
- package/tech/testing/index.esm.js +1018 -0
- package/tech/testing/index.esm.js.map +1 -0
- package/tech/testing/jest.d.ts +13 -0
- package/tech/testing/jest.d.ts.map +1 -0
- package/tech/testing/mocha.d.ts +13 -0
- package/tech/testing/mocha.d.ts.map +1 -0
- package/tech/testing/playwright.d.ts +13 -0
- package/tech/testing/playwright.d.ts.map +1 -0
- package/tech/testing/types.d.ts +35 -0
- package/tech/testing/types.d.ts.map +1 -0
- package/tech/testing/vitest.d.ts +13 -0
- package/tech/testing/vitest.d.ts.map +1 -0
- package/tech/types/detectors.d.ts +67 -0
- package/tech/types/detectors.d.ts.map +1 -0
- package/tech/types/index.cjs.js +1045 -0
- package/tech/types/index.cjs.js.map +1 -0
- package/tech/types/index.d.ts +2 -0
- package/tech/types/index.d.ts.map +1 -0
- package/tech/types/index.esm.js +1039 -0
- package/tech/types/index.esm.js.map +1 -0
- package/vfs/commit.d.ts +32 -0
- package/vfs/commit.d.ts.map +1 -0
- package/vfs/diff.d.ts +73 -0
- package/vfs/diff.d.ts.map +1 -0
- package/vfs/factory.d.ts +37 -0
- package/vfs/factory.d.ts.map +1 -0
- package/vfs/fs-tree.d.ts +13 -0
- package/vfs/fs-tree.d.ts.map +1 -0
- package/vfs/index.cjs.js +1600 -0
- package/vfs/index.cjs.js.map +1 -0
- package/vfs/index.d.ts +6 -0
- package/vfs/index.d.ts.map +1 -0
- package/vfs/index.esm.js +1590 -0
- package/vfs/index.esm.js.map +1 -0
- package/vfs/types.d.ts +178 -0
- package/vfs/types.d.ts.map +1 -0
package/README.md
ADDED
|
@@ -0,0 +1,242 @@
|
|
|
1
|
+
# @hyperfrontend/project-scope
|
|
2
|
+
|
|
3
|
+
<p align="center">
|
|
4
|
+
<a href="https://github.com/AndrewRedican/hyperfrontend/actions/workflows/ci-lib-project-scope.yml">
|
|
5
|
+
<img src="https://img.shields.io/github/actions/workflow/status/AndrewRedican/hyperfrontend/ci-lib-project-scope.yml?style=flat-square&logo=github&label=build" alt="Build">
|
|
6
|
+
</a>
|
|
7
|
+
<a href="https://codecov.io/gh/AndrewRedican/hyperfrontend/flags?flags%5B0%5D=project-scope">
|
|
8
|
+
<img src="https://codecov.io/gh/AndrewRedican/hyperfrontend/graph/badge.svg?flag=project-scope" alt="Coverage">
|
|
9
|
+
</a>
|
|
10
|
+
<a href="https://www.npmjs.com/package/@hyperfrontend/project-scope">
|
|
11
|
+
<img src="https://img.shields.io/npm/v/@hyperfrontend/project-scope?style=flat-square" alt="npm version">
|
|
12
|
+
</a>
|
|
13
|
+
<a href="https://bundlephobia.com/package/@hyperfrontend/project-scope">
|
|
14
|
+
<img src="https://img.shields.io/bundlephobia/min/%40hyperfrontend%2Fproject-scope?style=flat-square" alt="npm bundle size">
|
|
15
|
+
</a>
|
|
16
|
+
</p>
|
|
17
|
+
<p align="center">
|
|
18
|
+
<!-- ALL-CONTRIBUTORS-BADGE:START - Do not remove or modify this section -->
|
|
19
|
+
<a href="#contributors">
|
|
20
|
+
<img src="https://img.shields.io/github/all-contributors/AndrewRedican/hyperfrontend?color=ee8449&style=flat-square" alt="All Contributors">
|
|
21
|
+
</a>
|
|
22
|
+
<!-- ALL-CONTRIBUTORS-BADGE:END -->
|
|
23
|
+
<a href="https://github.com/AndrewRedican/hyperfrontend/blob/main/LICENSE.md">
|
|
24
|
+
<img src="https://img.shields.io/badge/license-MIT-blue?style=flat-square" alt="License">
|
|
25
|
+
</a>
|
|
26
|
+
<a href="https://www.npmjs.com/package/@hyperfrontend/project-scope">
|
|
27
|
+
<img src="https://img.shields.io/npm/dm/@hyperfrontend/project-scope?style=flat-square" alt="npm downloads">
|
|
28
|
+
</a>
|
|
29
|
+
<a href="https://github.com/AndrewRedican/hyperfrontend">
|
|
30
|
+
<img src="https://img.shields.io/github/stars/AndrewRedican/hyperfrontend?style=flat-square" alt="GitHub stars">
|
|
31
|
+
</a>
|
|
32
|
+
<img src="https://img.shields.io/badge/node-%3E%3D18.0.0-brightgreen?style=flat-square&logo=node.js" alt="Node Version">
|
|
33
|
+
<img src="https://img.shields.io/badge/tree%20shakeable-%E2%9C%93-success?style=flat-square" alt="Tree Shakeable">
|
|
34
|
+
</p>
|
|
35
|
+
|
|
36
|
+
Comprehensive project analysis, technology stack detection, and transactional virtual file system for Node.js tooling.
|
|
37
|
+
|
|
38
|
+
## What is @hyperfrontend/project-scope?
|
|
39
|
+
|
|
40
|
+
@hyperfrontend/project-scope provides intelligent codebase analysis for JavaScript/TypeScript projects. It uses multi-signal heuristics to classify project types, detect frameworks and build tools, discover entry points, and map dependency graphs - all with confidence scoring and explainable evidence. The library also includes a virtual file system (VFS) for safe, atomic file modifications.
|
|
41
|
+
|
|
42
|
+
Designed for tooling authors building code generators, IDE extensions, CI/CD pipelines, and monorepo tooling. Optional `@nx/devkit` integration enables seamless operation within NX workspaces with graceful fallback for standalone projects.
|
|
43
|
+
|
|
44
|
+
### Key Features
|
|
45
|
+
|
|
46
|
+
- **Project Classification** - Detect application, library, e2e, tool, or plugin with confidence scoring and evidence tracking
|
|
47
|
+
- **Technology Detection** - Identify 20+ frameworks (React, Vue, Angular, Svelte), build tools (Vite, Webpack, esbuild), and testing frameworks (Jest, Vitest, Cypress)
|
|
48
|
+
- **Virtual File System** - Transaction-aware file operations with atomic commit/rollback, following NX devkit's Tree interface
|
|
49
|
+
- **Monorepo Intelligence** - Detect NX, Turborepo, Lerna, pnpm/npm/Yarn workspaces; read project configurations
|
|
50
|
+
- **Dependency Graph** - Build internal import graphs from source code with root/leaf node identification
|
|
51
|
+
- **Entry Point Discovery** - Find application entries from package.json exports, bin fields, and convention patterns
|
|
52
|
+
- **CLI Interface** - Command-line access to all features with JSON/YAML output
|
|
53
|
+
- **Zero Runtime Dependencies** - All dependencies bundled for minimal footprint
|
|
54
|
+
|
|
55
|
+
### Architecture Highlights
|
|
56
|
+
|
|
57
|
+
Four-layer architecture: core (fs, path, encoding, platform), project (config detection, package.json, root finding), tech (framework/tool detectors with consistent interfaces), and heuristics (multi-signal classification with evidence). Detectors use function-scoped caching (30-60s TTL). VFS buffers changes in memory until explicit commit, with path traversal prevention and symlink validation.
|
|
58
|
+
|
|
59
|
+
## Why Use @hyperfrontend/project-scope?
|
|
60
|
+
|
|
61
|
+
### Accurate Framework Detection for Code Generators
|
|
62
|
+
|
|
63
|
+
Simple `package.json` parsing misses meta-frameworks, optional dependencies, and configuration-based setups. A project with `next` installed might be Next.js, but could also be a library that exports Next.js components. This library's multi-signal heuristics analyze dependencies, directory structure (`pages/`, `app/`), and config files (`next.config.js`) together, returning confidence-scored results. Your generator knows _with certainty_ whether to scaffold Next.js pages or React components.
|
|
64
|
+
|
|
65
|
+
### Safe File Modifications with Rollback
|
|
66
|
+
|
|
67
|
+
Code generators that write directly to disk risk leaving projects in broken states when errors occur mid-generation. The VFS buffers all changes in memory - write 50 files, validate the result, then `commitChanges()` atomically or `rollbackChanges()` to discard everything. Path traversal attacks are blocked at the VFS layer, making generators safe to run on untrusted input.
|
|
68
|
+
|
|
69
|
+
### Adaptive Tooling in Heterogeneous Monorepos
|
|
70
|
+
|
|
71
|
+
Monorepos contain React apps, Vue libraries, Node.js services, and Cypress suites - each requiring different lint rules, build configs, and CI pipelines. Use `detectAll()` per project to get technology detection with version info, then conditionally apply configurations. Cached results (30-60s TTL) ensure repeated analysis during builds stays fast.
|
|
72
|
+
|
|
73
|
+
### IDE Extensions Without Manual Configuration
|
|
74
|
+
|
|
75
|
+
IDE features that adapt to frameworks typically require users to configure their project type manually. This library provides runtime detection - determine React vs Vue for component snippets, identify Jest vs Vitest for test runners, detect Vite vs Webpack for build task integration. The CLI enables integration with shell-based tooling and editor extensions.
|
|
76
|
+
|
|
77
|
+
### Migration Planning with Evidence
|
|
78
|
+
|
|
79
|
+
Modernizing legacy codebases requires understanding current technology stack before planning migrations. `analyzeProject()` detects legacy frameworks (jQuery, AngularJS, Backbone), maps internal dependency graphs, and provides confidence-scored evidence for each detection. Generate reports that explain _why_ each technology was detected, enabling data-driven migration decisions.
|
|
80
|
+
|
|
81
|
+
## Installation
|
|
82
|
+
|
|
83
|
+
```bash
|
|
84
|
+
npm install @hyperfrontend/project-scope
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
## Requirements
|
|
88
|
+
|
|
89
|
+
- **Node.js:** 18.0.0 or higher
|
|
90
|
+
- **npm:** 8.0.0 or higher
|
|
91
|
+
|
|
92
|
+
> **Note:** This library is designed for Node.js environments only (no browser support). All file system operations use synchronous Node.js APIs.
|
|
93
|
+
|
|
94
|
+
## Quick Start
|
|
95
|
+
|
|
96
|
+
### Project Analysis
|
|
97
|
+
|
|
98
|
+
```typescript
|
|
99
|
+
import { analyzeProject, detectAll } from '@hyperfrontend/project-scope'
|
|
100
|
+
|
|
101
|
+
// Full project analysis
|
|
102
|
+
const analysis = analyzeProject('./my-project')
|
|
103
|
+
console.log(analysis.projectType) // 'library' | 'application' | 'e2e' | 'tool'
|
|
104
|
+
console.log(analysis.frameworks.map((f) => `${f.name} (${f.confidence}%)`))
|
|
105
|
+
|
|
106
|
+
// Technology stack detection
|
|
107
|
+
const tech = detectAll('./my-project')
|
|
108
|
+
console.log(
|
|
109
|
+
'Frontend:',
|
|
110
|
+
tech.frontendFrameworks.map((f) => f.name)
|
|
111
|
+
)
|
|
112
|
+
console.log(
|
|
113
|
+
'Build:',
|
|
114
|
+
tech.buildTools.map((t) => t.name)
|
|
115
|
+
)
|
|
116
|
+
console.log(
|
|
117
|
+
'Testing:',
|
|
118
|
+
tech.testingFrameworks.map((t) => t.name)
|
|
119
|
+
)
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
### Virtual File System
|
|
123
|
+
|
|
124
|
+
```typescript
|
|
125
|
+
import { createTree, Mode } from '@hyperfrontend/project-scope'
|
|
126
|
+
|
|
127
|
+
const tree = createTree('./my-project')
|
|
128
|
+
|
|
129
|
+
tree.write('src/new-file.ts', 'export const hello = "world"')
|
|
130
|
+
tree.rename('src/old.ts', 'src/renamed.ts')
|
|
131
|
+
tree.delete('src/deprecated.ts')
|
|
132
|
+
|
|
133
|
+
tree.commitChanges() // Atomic commit, or rollbackChanges() to discard
|
|
134
|
+
```
|
|
135
|
+
|
|
136
|
+
### CLI
|
|
137
|
+
|
|
138
|
+
```bash
|
|
139
|
+
project-scope analyze ./my-project --format json
|
|
140
|
+
project-scope config ./my-project --type typescript,eslint
|
|
141
|
+
project-scope tree ./my-project --depth 3
|
|
142
|
+
```
|
|
143
|
+
|
|
144
|
+
## API Overview
|
|
145
|
+
|
|
146
|
+
### Analysis
|
|
147
|
+
|
|
148
|
+
- **`analyzeProject(path, options?): AnalysisResult`** - Comprehensive project analysis
|
|
149
|
+
- **`detectProjectType(path): ProjectTypeDetection`** - Classify project type with evidence
|
|
150
|
+
- **`identifyFrameworks(path): FrameworkIdentification`** - Detect frameworks with confidence scores
|
|
151
|
+
- **`discoverEntryPoints(path): EntryPointInfo[]`** - Find application entry points
|
|
152
|
+
- **`buildDependencyGraph(path): DependencyGraph`** - Build internal dependency graph
|
|
153
|
+
|
|
154
|
+
### Technology Detection
|
|
155
|
+
|
|
156
|
+
- **`detectAll(path): AllDetections`** - Run all technology detectors
|
|
157
|
+
- **`frameworkDetectors`** - Individual framework detectors (React, Vue, Angular, etc.)
|
|
158
|
+
- **`backendDetectors`** - Backend framework detectors (Express, NestJS, Fastify, etc.)
|
|
159
|
+
- **`buildToolDetectors`** - Build tool detectors (Webpack, Vite, Rollup, etc.)
|
|
160
|
+
- **`testingDetectors`** - Testing framework detectors (Jest, Vitest, Cypress, etc.)
|
|
161
|
+
|
|
162
|
+
### Project Utilities
|
|
163
|
+
|
|
164
|
+
- **`readPackageJson(path): PackageJson`** - Parse package.json
|
|
165
|
+
- **`findProjectRoot(path): string`** - Find nearest project root
|
|
166
|
+
- **`findWorkspaceRoot(path): string`** - Find monorepo/workspace root
|
|
167
|
+
- **`detectConfigs(path, types?): ConfigFileInfo[]`** - Find configuration files
|
|
168
|
+
|
|
169
|
+
### Virtual File System
|
|
170
|
+
|
|
171
|
+
- **`createTree(path, options?): Tree`** - Create transactional file tree
|
|
172
|
+
- **`Mode`** - Write modes: `Overwrite`, `ExclusiveCreate`, `SkipIfExists`
|
|
173
|
+
- Tree methods: `read()`, `write()`, `exists()`, `delete()`, `rename()`, `commitChanges()`, `rollbackChanges()`
|
|
174
|
+
|
|
175
|
+
### NX Integration
|
|
176
|
+
|
|
177
|
+
- **`isNxWorkspace(path): boolean`** - Check if directory is NX workspace
|
|
178
|
+
- **`getNxWorkspaceInfo(path): NxWorkspaceInfo`** - Get workspace details
|
|
179
|
+
- **`findNxProjects(path): NxProjectConfig[]`** - Find all projects
|
|
180
|
+
- **`isDevkitAvailable(): boolean`** - Check if `@nx/devkit` is available
|
|
181
|
+
|
|
182
|
+
### Core Utilities
|
|
183
|
+
|
|
184
|
+
- **File System:** `readFileContent()`, `writeFileContent()`, `readJsonFile()`, `exists()`, `isFile()`, `isDirectory()`
|
|
185
|
+
- **Path:** `normalizePath()`, `joinPath()`, `resolvePath()`, `relativePath()`
|
|
186
|
+
- **Encoding:** `detectEncoding()`, `convertEncoding()`
|
|
187
|
+
- **Platform:** `detectPlatform()`, `isWindows()`, `isMacOS()`, `isLinux()`
|
|
188
|
+
|
|
189
|
+
## Secondary Entry Points
|
|
190
|
+
|
|
191
|
+
Import specific modules for tree-shaking optimization:
|
|
192
|
+
|
|
193
|
+
```typescript
|
|
194
|
+
// Core utilities
|
|
195
|
+
import { readFileContent, writeFileContent } from '@hyperfrontend/project-scope/core/fs'
|
|
196
|
+
import { normalizePath, joinPath } from '@hyperfrontend/project-scope/core/path'
|
|
197
|
+
|
|
198
|
+
// Heuristics
|
|
199
|
+
import { detectProjectType } from '@hyperfrontend/project-scope/heuristics/project-type'
|
|
200
|
+
import { discoverEntryPoints } from '@hyperfrontend/project-scope/heuristics/entry-points'
|
|
201
|
+
|
|
202
|
+
// Technology detection
|
|
203
|
+
import { detectAll } from '@hyperfrontend/project-scope/tech'
|
|
204
|
+
import { reactDetector } from '@hyperfrontend/project-scope/tech/frontend'
|
|
205
|
+
|
|
206
|
+
// Project utilities
|
|
207
|
+
import { readPackageJson } from '@hyperfrontend/project-scope/project/package'
|
|
208
|
+
import { detectConfigs } from '@hyperfrontend/project-scope/project/config'
|
|
209
|
+
|
|
210
|
+
// Virtual file system
|
|
211
|
+
import { createTree, Mode } from '@hyperfrontend/project-scope/vfs'
|
|
212
|
+
|
|
213
|
+
// NX integration
|
|
214
|
+
import { isNxWorkspace, findNxProjects } from '@hyperfrontend/project-scope/nx'
|
|
215
|
+
```
|
|
216
|
+
|
|
217
|
+
## Compatibility
|
|
218
|
+
|
|
219
|
+
| Platform | Support |
|
|
220
|
+
| -------- | :-----: |
|
|
221
|
+
| Node.js | ✅ |
|
|
222
|
+
| Browser | ❌ |
|
|
223
|
+
|
|
224
|
+
### Output Formats
|
|
225
|
+
|
|
226
|
+
| Format | File | Tree-Shakeable |
|
|
227
|
+
| ------ | -------------- | :------------: |
|
|
228
|
+
| ESM | `index.esm.js` | ✅ |
|
|
229
|
+
| CJS | `index.cjs.js` | ❌ |
|
|
230
|
+
|
|
231
|
+
## Part of hyperfrontend
|
|
232
|
+
|
|
233
|
+
This library is part of the [hyperfrontend](https://github.com/AndrewRedican/hyperfrontend) monorepo.
|
|
234
|
+
|
|
235
|
+
**📖 [Full documentation](https://www.hyperfrontend.dev/docs/libraries/project-scope)**
|
|
236
|
+
|
|
237
|
+
- Works seamlessly with [@hyperfrontend/nexus](https://github.com/AndrewRedican/hyperfrontend/tree/main/libs/nexus) for cross-window communication tooling
|
|
238
|
+
- Looking for cryptographic utilities? See [@hyperfrontend/cryptography](https://github.com/AndrewRedican/hyperfrontend/tree/main/libs/cryptography)
|
|
239
|
+
|
|
240
|
+
## License
|
|
241
|
+
|
|
242
|
+
MIT
|
package/SECURITY.md
ADDED
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
# Security Policy
|
|
2
|
+
|
|
3
|
+
## Reporting a Vulnerability
|
|
4
|
+
|
|
5
|
+
We take the security of hyperfrontend seriously. If you discover a security vulnerability, please help us protect our users by following responsible disclosure practices.
|
|
6
|
+
|
|
7
|
+
### How to Report
|
|
8
|
+
|
|
9
|
+
**Please DO NOT report security vulnerabilities through public GitHub issues.**
|
|
10
|
+
|
|
11
|
+
Instead, please report security vulnerabilities directly via email to:
|
|
12
|
+
|
|
13
|
+
**<andrew.redican.mejia@gmail.com>**
|
|
14
|
+
|
|
15
|
+
### What to Include
|
|
16
|
+
|
|
17
|
+
To help us understand and resolve the issue quickly, please include the following information in your report:
|
|
18
|
+
|
|
19
|
+
- **Description**: A clear description of the vulnerability
|
|
20
|
+
- **Impact**: The potential impact and severity of the issue
|
|
21
|
+
- **Reproduction Steps**: Detailed steps to reproduce the vulnerability
|
|
22
|
+
- **Environment**: The version of hyperfrontend affected, browser/Node.js version, operating system, etc.
|
|
23
|
+
- **Proof of Concept**: If possible, include a minimal code example or proof of concept
|
|
24
|
+
- **Suggested Fix**: If you have ideas on how to fix the issue (optional)
|
|
25
|
+
|
|
26
|
+
### Response Timeline
|
|
27
|
+
|
|
28
|
+
- **Acknowledgment**: We will acknowledge receipt of your vulnerability report within 2 business days
|
|
29
|
+
- **Initial Assessment**: We will provide an initial assessment within 5 business days
|
|
30
|
+
- **Patch Development**: We aim to develop and test a patch within 10 days of acknowledgment
|
|
31
|
+
- **Public Disclosure**: Please allow at least **10 days** from the initial report before making the vulnerability publicly known
|
|
32
|
+
|
|
33
|
+
This grace period gives us time to:
|
|
34
|
+
|
|
35
|
+
- Verify and reproduce the issue
|
|
36
|
+
- Develop and test a fix
|
|
37
|
+
- Release a patched version
|
|
38
|
+
- Notify users to update their dependencies
|
|
39
|
+
|
|
40
|
+
### Coordinated Disclosure
|
|
41
|
+
|
|
42
|
+
We believe in coordinated disclosure and appreciate your cooperation in:
|
|
43
|
+
|
|
44
|
+
- Not exploiting the vulnerability beyond what is necessary to demonstrate it
|
|
45
|
+
- Not accessing, modifying, or deleting data that doesn't belong to you
|
|
46
|
+
- Allowing us reasonable time to address the issue before public disclosure
|
|
47
|
+
- Making a good faith effort to avoid privacy violations, data destruction, and service interruption
|
|
48
|
+
|
|
49
|
+
### Recognition
|
|
50
|
+
|
|
51
|
+
Once the vulnerability is patched and publicly disclosed, we will acknowledge your responsible disclosure in:
|
|
52
|
+
|
|
53
|
+
- Our release notes
|
|
54
|
+
- Our security advisories (if applicable)
|
|
55
|
+
- This SECURITY.md file (with your permission)
|
|
56
|
+
|
|
57
|
+
Thank you for helping keep hyperfrontend and its users safe!
|
|
58
|
+
|
|
59
|
+
## Security Best Practices
|
|
60
|
+
|
|
61
|
+
When using hyperfrontend in your applications:
|
|
62
|
+
|
|
63
|
+
1. **Keep Dependencies Updated**: Regularly update to the latest version to receive security patches
|
|
64
|
+
2. **Content Security Policy**: Implement appropriate CSP headers when embedding features
|
|
65
|
+
3. **Input Validation**: Validate and sanitize all data passed between features
|
|
66
|
+
4. **Origin Verification**: Always verify the origin of messages in cross-frame communication
|
|
67
|
+
5. **Authentication**: Implement proper authentication and authorization for sensitive features
|
|
68
|
+
6. **HTTPS**: Always serve hyperfrontend features over HTTPS in production
|
|
69
|
+
|
|
70
|
+
## Security Updates
|
|
71
|
+
|
|
72
|
+
Security updates will be released as patch versions and documented in the [CHANGELOG](https://github.com/AndrewRedican/hyperfrontend/releases) and GitHub Security Advisories.
|
|
73
|
+
|
|
74
|
+
## Supported Versions
|
|
75
|
+
|
|
76
|
+
We currently provide security updates for:
|
|
77
|
+
|
|
78
|
+
| Version | Supported |
|
|
79
|
+
| ------- | ------------------ |
|
|
80
|
+
| 0.0.x | :white_check_mark: |
|
|
81
|
+
|
|
82
|
+
As the project matures, we will update this table to reflect our long-term support policy.
|
package/analyze.d.ts
ADDED
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import type { AnalysisResult } from './models';
|
|
2
|
+
/**
|
|
3
|
+
* Options for project analysis.
|
|
4
|
+
*/
|
|
5
|
+
export interface AnalyzeOptions {
|
|
6
|
+
/** Analysis depth */
|
|
7
|
+
depth?: 'basic' | 'full' | 'deep';
|
|
8
|
+
/** Specific analyses to include */
|
|
9
|
+
include?: Array<'frameworks' | 'buildTools' | 'testing' | 'entryPoints' | 'configs' | 'dependencies'>;
|
|
10
|
+
/** Analyses to skip */
|
|
11
|
+
exclude?: Array<'frameworks' | 'buildTools' | 'testing' | 'entryPoints' | 'configs' | 'dependencies'>;
|
|
12
|
+
/** Enable verbose logging */
|
|
13
|
+
verbose?: boolean;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Analyze a project for frameworks, build tools, and structure.
|
|
17
|
+
*
|
|
18
|
+
* This is the main entry point for comprehensive project analysis.
|
|
19
|
+
* It orchestrates all detection modules and returns a unified result.
|
|
20
|
+
*
|
|
21
|
+
* @param projectPath - Path to project directory
|
|
22
|
+
* @param options - Analysis options
|
|
23
|
+
* @returns Complete analysis result
|
|
24
|
+
*
|
|
25
|
+
* @example
|
|
26
|
+
* ```typescript
|
|
27
|
+
* const result = analyzeProject('./my-project')
|
|
28
|
+
* console.log(result.projectType) // 'application' | 'library' | ...
|
|
29
|
+
* console.log(result.frameworks) // [{ id: 'react', name: 'React', ... }]
|
|
30
|
+
* ```
|
|
31
|
+
*/
|
|
32
|
+
export declare function analyzeProject(projectPath: string, options?: AnalyzeOptions): AnalysisResult;
|
|
33
|
+
//# sourceMappingURL=analyze.d.ts.map
|
package/analyze.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"analyze.d.ts","sourceRoot":"","sources":["../../../../../../libs/project-scope/src/analyze.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,cAAc,EASf,MAAM,UAAU,CAAA;AAmBjB;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,qBAAqB;IACrB,KAAK,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,CAAA;IACjC,mCAAmC;IACnC,OAAO,CAAC,EAAE,KAAK,CAAC,YAAY,GAAG,YAAY,GAAG,SAAS,GAAG,aAAa,GAAG,SAAS,GAAG,cAAc,CAAC,CAAA;IACrG,uBAAuB;IACvB,OAAO,CAAC,EAAE,KAAK,CAAC,YAAY,GAAG,YAAY,GAAG,SAAS,GAAG,aAAa,GAAG,SAAS,GAAG,cAAc,CAAC,CAAA;IACrG,6BAA6B;IAC7B,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB;AA8FD;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,cAAc,CA2J5F"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type { Command, CommandResult, OutputFormat } from '../types';
|
|
2
|
+
export interface AnalyzeCommandOptions {
|
|
3
|
+
path?: string;
|
|
4
|
+
format?: OutputFormat;
|
|
5
|
+
depth?: 'basic' | 'full' | 'deep';
|
|
6
|
+
include?: string[];
|
|
7
|
+
exclude?: string[];
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Execute analyze command with given options.
|
|
11
|
+
*
|
|
12
|
+
* @param options - Configuration for the analyze operation
|
|
13
|
+
* @returns Command execution result with exit code and output
|
|
14
|
+
*/
|
|
15
|
+
export declare function analyzeCommand(options: AnalyzeCommandOptions): CommandResult;
|
|
16
|
+
/**
|
|
17
|
+
* Analyze command definition implementing Command interface.
|
|
18
|
+
*/
|
|
19
|
+
export declare const analyzeCommandDef: Command;
|
|
20
|
+
//# sourceMappingURL=analyze.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"analyze.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/project-scope/src/cli/commands/analyze.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,aAAa,EAAiB,YAAY,EAAE,MAAM,UAAU,CAAA;AAQnF,MAAM,WAAW,qBAAqB;IACpC,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,YAAY,CAAA;IACrB,KAAK,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,CAAA;IACjC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;IAClB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;CACnB;AAiOD;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,qBAAqB,GAAG,aAAa,CAgC5E;AAED;;GAEG;AACH,eAAO,MAAM,iBAAiB,EAAE,OA6C/B,CAAA"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type { ConfigType } from '../../project/config';
|
|
2
|
+
import type { Command, CommandResult, OutputFormat } from '../types';
|
|
3
|
+
export interface ConfigCommandOptions {
|
|
4
|
+
path?: string;
|
|
5
|
+
type?: ConfigType;
|
|
6
|
+
showContents?: boolean;
|
|
7
|
+
format?: OutputFormat;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Execute config command with given options.
|
|
11
|
+
*
|
|
12
|
+
* @param options - Configuration command options
|
|
13
|
+
* @returns Command execution result with exit code and output
|
|
14
|
+
*/
|
|
15
|
+
export declare function configCommand(options: ConfigCommandOptions): CommandResult;
|
|
16
|
+
/**
|
|
17
|
+
* Config command definition implementing Command interface.
|
|
18
|
+
*/
|
|
19
|
+
export declare const configCommandDef: Command;
|
|
20
|
+
//# sourceMappingURL=config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/project-scope/src/cli/commands/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAkB,MAAM,sBAAsB,CAAA;AACtE,OAAO,KAAK,EAAE,OAAO,EAAE,aAAa,EAAiB,YAAY,EAAE,MAAM,UAAU,CAAA;AAOnF,MAAM,WAAW,oBAAoB;IACnC,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,UAAU,CAAA;IACjB,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,MAAM,CAAC,EAAE,YAAY,CAAA;CACtB;AA2ND;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,oBAAoB,GAAG,aAAa,CAqB1E;AAED;;GAEG;AACH,eAAO,MAAM,gBAAgB,EAAE,OAmC9B,CAAA"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { Command, CommandResult, OutputFormat } from '../types';
|
|
2
|
+
export interface DepsCommandOptions {
|
|
3
|
+
path?: string;
|
|
4
|
+
type?: 'production' | 'development' | 'peer' | 'optional' | 'all';
|
|
5
|
+
format?: OutputFormat;
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* Execute deps command with given options.
|
|
9
|
+
*
|
|
10
|
+
* @param options - Parsed command options
|
|
11
|
+
* @returns Command execution result with exit code and output
|
|
12
|
+
*/
|
|
13
|
+
export declare function depsCommand(options: DepsCommandOptions): CommandResult;
|
|
14
|
+
/**
|
|
15
|
+
* Deps command definition implementing Command interface.
|
|
16
|
+
*/
|
|
17
|
+
export declare const depsCommandDef: Command;
|
|
18
|
+
//# sourceMappingURL=deps.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deps.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/project-scope/src/cli/commands/deps.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,aAAa,EAAiB,YAAY,EAAE,MAAM,UAAU,CAAA;AAQnF,MAAM,WAAW,kBAAkB;IACjC,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,YAAY,GAAG,aAAa,GAAG,MAAM,GAAG,UAAU,GAAG,KAAK,CAAA;IACjE,MAAM,CAAC,EAAE,YAAY,CAAA;CACtB;AAyKD;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,kBAAkB,GAAG,aAAa,CAqBtE;AAED;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,OAuC5B,CAAA"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { Command, CommandResult, OutputFormat } from '../types';
|
|
2
|
+
export interface TreeCommandOptions {
|
|
3
|
+
path?: string;
|
|
4
|
+
depth?: number;
|
|
5
|
+
pattern?: string;
|
|
6
|
+
ignore?: string[];
|
|
7
|
+
dirsOnly?: boolean;
|
|
8
|
+
filesOnly?: boolean;
|
|
9
|
+
showSize?: boolean;
|
|
10
|
+
showModified?: boolean;
|
|
11
|
+
format?: OutputFormat;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Execute tree command with given options.
|
|
15
|
+
*
|
|
16
|
+
* @param options - Configuration for the tree operation
|
|
17
|
+
* @returns Command execution result with exit code and output
|
|
18
|
+
*/
|
|
19
|
+
export declare function treeCommand(options: TreeCommandOptions): CommandResult;
|
|
20
|
+
/**
|
|
21
|
+
* Tree command definition implementing Command interface.
|
|
22
|
+
*/
|
|
23
|
+
export declare const treeCommandDef: Command;
|
|
24
|
+
//# sourceMappingURL=tree.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tree.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/project-scope/src/cli/commands/tree.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,aAAa,EAAiB,YAAY,EAAE,MAAM,UAAU,CAAA;AASnF,MAAM,WAAW,kBAAkB;IACjC,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,MAAM,CAAC,EAAE,YAAY,CAAA;CACtB;AAgQD;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,kBAAkB,GAAG,aAAa,CAmCtE;AAED;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,OAyC5B,CAAA"}
|