# configuration/strings/dependency.strings.ts

> 19 lines of code and 8 definitions.

Tree: Project Scripts
Language: typescript
Layer: product
Canonical: https://banes-lab.com/anatomy/scripts#file-scripts-configuration-strings-dependency-strings-ts
Source text: https://banes-lab.com/source/scripts/configuration/strings/dependency.strings.ts.txt

Listed in [configuration/strings](https://banes-lab.com/api/source/scripts/configuration/strings.md), after [configuration/strings/credential.strings.ts](https://banes-lab.com/source/scripts/configuration/strings/credential.strings.ts.md) and before [configuration/strings/nginx.strings.ts](https://banes-lab.com/source/scripts/configuration/strings/nginx.strings.ts.md).

## Definitions

- `missingAllowScripts` (lexical_declaration, line 7, exported)
- `listingFailed` (lexical_declaration, line 11, exported)
- `hoistBreachHeading` (lexical_declaration, line 20, exported)
- `undecidedHeading` (lexical_declaration, line 24, exported)
- `EVERY_SCRIPT_DECIDED` (lexical_declaration, line 1, exported)
- `REVIEW_REMEDY` (lexical_declaration, line 4, exported)
- `ONE_HOIST_HELD` (lexical_declaration, line 15, exported)
- `HOIST_REMEDY` (lexical_declaration, line 17, exported)

## Contained in

- [configuration/strings](https://banes-lab.com/anatomy/scripts/folder-scripts-configuration-strings.md)

## Used by

- [core/adapters/dependency.adapter.ts](https://banes-lab.com/source/scripts/core/adapters/dependency.adapter.ts.md)
- [core/validators/dependency.validator.ts](https://banes-lab.com/source/scripts/core/validators/dependency.validator.ts.md)

## Linked from

- [core/adapters](https://banes-lab.com/anatomy/scripts/folder-scripts-core-adapters.md)
- [core/validators](https://banes-lab.com/anatomy/scripts/folder-scripts-core-validators.md)

## Source

```typescript
export const EVERY_SCRIPT_DECIDED =
    "[install-scripts] every dependency install script is approved or denied in allowScripts\n";

export const REVIEW_REMEDY =
    "  Review each script, then record the decision in the root package.json with npm install-scripts approve or deny.";

export const missingAllowScripts = function missingAllowScripts(output: string): string {
    return `[install-scripts] npm answered without an allowScripts list: ${output}`;
};

export const listingFailed = function listingFailed(status: number | null, stderr: string): string {
    return `[install-scripts] npm install-scripts ls exited ${String(status)}: ${stderr}`;
};

export const ONE_HOIST_HELD = "[one-hoist] no node_modules folder or lockfile sits below the workspace root\n";

export const HOIST_REMEDY =
    "  Point the tool that wrote each one at a location under the root through the paths SSOT, then delete it. A dependency belongs in the root package.json.";

export const hoistBreachHeading = function hoistBreachHeading(count: number): string {
    return `[one-hoist] ${String(count)} node_modules folder(s) or lockfile(s) sit below the workspace root, outside the one hoist:`;
};

export const undecidedHeading = function undecidedHeading(count: number): string {
    return `[install-scripts] ${String(count)} dependency install script(s) have no allowScripts decision:`;
};
```
