{
  "definitions": [
    {
      "callable": true,
      "callees": [],
      "callers": [
        {
          "file": "runtime/entrypoints/source.entrypoint.ts",
          "name": "jsCoverageGlobs",
          "source": {
            "href": "https://banes-lab.com/anatomy/quality#file-quality-runtime-entrypoints-source-entrypoint-ts",
            "json": "https://banes-lab.com/json/source/quality/runtime/entrypoints/source.entrypoint.ts",
            "label": "runtime/entrypoints/source.entrypoint.ts",
            "markdown": "https://banes-lab.com/source/quality/runtime/entrypoints/source.entrypoint.ts.md",
            "ref": "anatomy:file-quality-runtime-entrypoints-source-entrypoint-ts"
          }
        }
      ],
      "exported": false,
      "flow": "leaf",
      "kind": "lexical_declaration",
      "line": 50,
      "name": "scanGlobChar",
      "signature": "const scanGlobChar = function scanGlobChar(state: GlobScanState, ch: string): GlobScanState {"
    },
    {
      "callable": true,
      "callees": [],
      "callers": [
        {
          "file": "runtime/entrypoints/source.entrypoint.ts",
          "name": "hostPackageTargets",
          "source": {
            "href": "https://banes-lab.com/anatomy/quality#file-quality-runtime-entrypoints-source-entrypoint-ts",
            "json": "https://banes-lab.com/json/source/quality/runtime/entrypoints/source.entrypoint.ts",
            "label": "runtime/entrypoints/source.entrypoint.ts",
            "markdown": "https://banes-lab.com/source/quality/runtime/entrypoints/source.entrypoint.ts.md",
            "ref": "anatomy:file-quality-runtime-entrypoints-source-entrypoint-ts"
          }
        }
      ],
      "exported": false,
      "flow": "leaf",
      "kind": "lexical_declaration",
      "line": 91,
      "name": "collectExportTargets",
      "signature": "const collectExportTargets = function collectExportTargets(value: unknown): string[] {"
    },
    {
      "callable": true,
      "callees": [
        {
          "file": "runtime/entrypoints/source.entrypoint.ts",
          "name": "scanGlobChar",
          "source": {
            "href": "https://banes-lab.com/anatomy/quality#file-quality-runtime-entrypoints-source-entrypoint-ts",
            "json": "https://banes-lab.com/json/source/quality/runtime/entrypoints/source.entrypoint.ts",
            "label": "runtime/entrypoints/source.entrypoint.ts",
            "markdown": "https://banes-lab.com/source/quality/runtime/entrypoints/source.entrypoint.ts.md",
            "ref": "anatomy:file-quality-runtime-entrypoints-source-entrypoint-ts"
          }
        }
      ],
      "callers": [],
      "exported": false,
      "flow": "entry",
      "kind": "lexical_declaration",
      "line": 64,
      "name": "jsCoverageGlobs",
      "signature": "const jsCoverageGlobs = function jsCoverageGlobs(text: string): string[] {"
    },
    {
      "callable": true,
      "callees": [
        {
          "file": "runtime/entrypoints/source.entrypoint.ts",
          "name": "collectExportTargets",
          "source": {
            "href": "https://banes-lab.com/anatomy/quality#file-quality-runtime-entrypoints-source-entrypoint-ts",
            "json": "https://banes-lab.com/json/source/quality/runtime/entrypoints/source.entrypoint.ts",
            "label": "runtime/entrypoints/source.entrypoint.ts",
            "markdown": "https://banes-lab.com/source/quality/runtime/entrypoints/source.entrypoint.ts.md",
            "ref": "anatomy:file-quality-runtime-entrypoints-source-entrypoint-ts"
          }
        }
      ],
      "callers": [],
      "exported": false,
      "flow": "entry",
      "kind": "lexical_declaration",
      "line": 128,
      "name": "hostPackageTargets",
      "signature": "const hostPackageTargets = function hostPackageTargets(file: string): string[] {"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 20,
      "name": "ALLOWLIST_FILE",
      "signature": "const ALLOWLIST_FILE = \"source.typescript.allowlist.json\";"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 22,
      "name": "repoRoot",
      "signature": "const repoRoot = WORKSPACE_ROOT;"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 23,
      "name": "allowlist",
      "signature": "const allowlist = readJsonFile(absolutePath(\"govlab.quality.allowlists\", ALLOWLIST_FILE));"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 24,
      "name": "allow",
      "signature": "const allow = new Set("
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 30,
      "name": "isExcluded",
      "signature": "const isExcluded = await excludeMatcher(process.cwd());"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 31,
      "name": "FORBIDDEN_EXT",
      "signature": "const FORBIDDEN_EXT = new Set([\".js\", \".mjs\", \".cjs\", \".jsx\"]);"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 32,
      "name": "JS_CONFIG_MARKERS",
      "signature": "const JS_CONFIG_MARKERS = ['\"allowJs\":true', '\"checkJs\":true', '\"checkJs\":false'];"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 33,
      "name": "JS_GLOB_EXTS",
      "signature": "const JS_GLOB_EXTS = [\".js\", \".mjs\", \".cjs\", \".jsx\"];"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 34,
      "name": "QUOTE_CHARS",
      "signature": "const QUOTE_CHARS = new Set(['\"', \"'\", \"`\"]);"
    },
    {
      "callable": true,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 36,
      "name": "isConsumerConfig",
      "signature": "const isConsumerConfig = function isConsumerConfig(name: string): boolean {"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "interface_declaration",
      "line": 40,
      "name": "GlobScanState",
      "signature": "interface GlobScanState {"
    },
    {
      "callable": true,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 46,
      "name": "isJsGlob",
      "signature": "const isJsGlob = function isJsGlob(candidate: string): boolean {"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 55,
      "name": "found",
      "signature": "const found = isJsGlob(state.buf) ? [...state.found, state.buf] : state.found;"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 65,
      "name": "state",
      "signature": "let state: GlobScanState = { buf: \"\", found: [], quote: null };"
    },
    {
      "callable": true,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 72,
      "name": "compact",
      "signature": "const compact = function compact(text: string): string {"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 73,
      "name": "out",
      "signature": "let out = \"\";"
    },
    {
      "callable": true,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 82,
      "name": "isTsconfig",
      "signature": "const isTsconfig = function isTsconfig(name: string): boolean {"
    },
    {
      "callable": true,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 86,
      "name": "extensionOf",
      "signature": "const extensionOf = function extensionOf(name: string): string {"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 87,
      "name": "dot",
      "signature": "const dot = name.lastIndexOf(\".\");"
    },
    {
      "callable": true,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 101,
      "name": "isBuiltJsTarget",
      "signature": "const isBuiltJsTarget = function isBuiltJsTarget(target: string): boolean {"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 108,
      "name": "IMPORT_TOKEN",
      "signature": "const IMPORT_TOKEN = \"import(\";"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 109,
      "name": "DIST_IMPORT_WINDOW",
      "signature": "const DIST_IMPORT_WINDOW = 220;"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 110,
      "name": "COMPUTED_MARKERS",
      "signature": "const COMPUTED_MARKERS = [\"resolve(\", \"pathToFileURL\", '\"./', '\"../', \"'./\", \"'../\", \"`./\", \"`../\"];"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 111,
      "name": "SOURCE_EXT",
      "signature": "const SOURCE_EXT = new Set([\".ts\", \".mts\", \".cts\", \".tsx\"]);"
    },
    {
      "callable": true,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 113,
      "name": "importsOurDist",
      "signature": "const importsOurDist = function importsOurDist(text: string): boolean {"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 114,
      "name": "from",
      "signature": "let from = 0;"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 116,
      "name": "idx",
      "signature": "const idx = text.indexOf(IMPORT_TOKEN, from);"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 120,
      "name": "window",
      "signature": "const window = new Set(text.slice(idx, idx + DIST_IMPORT_WINDOW));"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 129,
      "name": "pkg",
      "signature": "const pkg = readJsonFile(file);"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 133,
      "name": "main",
      "signature": "const main = typeof pkg[\"main\"] === \"string\" ? [pkg[\"main\"]] : [];"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 137,
      "name": "files",
      "signature": "const files = walkFiles(repoRoot, isExcluded);"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 138,
      "name": "errors",
      "signature": "const errors: string[] = [];"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 139,
      "name": "dtsErrors",
      "signature": "const dtsErrors: string[] = [];"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 140,
      "name": "pkgErrors",
      "signature": "const pkgErrors: string[] = [];"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 141,
      "name": "configErrors",
      "signature": "const configErrors: string[] = [];"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 142,
      "name": "globErrors",
      "signature": "const globErrors: string[] = [];"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 143,
      "name": "distImportErrors",
      "signature": "const distImportErrors: string[] = [];"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 146,
      "name": "rel",
      "signature": "const rel = relative(repoRoot, file).split(\"\\\\\").join(\"/\");"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 147,
      "name": "name",
      "signature": "const name = basename(file);"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 148,
      "name": "ext",
      "signature": "const ext = extensionOf(name);"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 164,
      "name": "contents",
      "signature": "const contents = compact(readFileSync(file, \"utf8\"));"
    },
    {
      "callable": true,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 183,
      "name": "reportErrors",
      "signature": "const reportErrors = function reportErrors(list: string[], header: string): void {"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 193,
      "name": "failures",
      "signature": "const failures ="
    }
  ],
  "document": null,
  "findings": [],
  "generated": false,
  "href": "https://banes-lab.com/anatomy/quality#file-quality-runtime-entrypoints-source-entrypoint-ts",
  "language": "typescript",
  "layer": "runtime",
  "name": "source.entrypoint.ts",
  "path": "runtime/entrypoints/source.entrypoint.ts",
  "ref": "anatomy:file-quality-runtime-entrypoints-source-entrypoint-ts",
  "relations": [
    {
      "links": [
        {
          "href": "https://banes-lab.com/anatomy/quality#folder-quality-runtime-entrypoints",
          "json": "https://banes-lab.com/json/anatomy/quality/folder-quality-runtime-entrypoints",
          "label": "runtime/entrypoints",
          "markdown": "https://banes-lab.com/anatomy/quality/folder-quality-runtime-entrypoints.md",
          "ref": "chapter:/anatomy/quality#folder-quality-runtime-entrypoints"
        }
      ],
      "relation": "contained-in"
    },
    {
      "links": [
        {
          "href": "https://banes-lab.com/ontology#architecture-standardization",
          "json": "https://banes-lab.com/json/records/architecture/standardization",
          "label": "Standardization",
          "markdown": "https://banes-lab.com/records/architecture/standardization.md",
          "ref": "architecture:standardization"
        }
      ],
      "relation": "enforces"
    },
    {
      "links": [
        {
          "href": "https://banes-lab.com/anatomy/quality#folder-quality-runtime-entrypoints",
          "json": "https://banes-lab.com/json/anatomy/quality/folder-quality-runtime-entrypoints",
          "label": "runtime/entrypoints",
          "markdown": "https://banes-lab.com/anatomy/quality/folder-quality-runtime-entrypoints.md",
          "ref": "chapter:/anatomy/quality#folder-quality-runtime-entrypoints"
        }
      ],
      "relation": "linked-from"
    }
  ],
  "slots": {
    "concern": "entrypoint",
    "subject": "source",
    "variant": null
  },
  "stats": {
    "bytes": 7101,
    "callable": 12,
    "definitions": 47,
    "edges": 2,
    "exported": 0,
    "files": 1,
    "findings": {},
    "flows": {
      "leaf": 2,
      "entry": 2,
      "isolated": 43
    },
    "lines": {
      "blank": 21,
      "code": 188,
      "total": 209
    }
  },
  "summary": "188 lines of code and 47 definitions.",
  "text": "https://banes-lab.com/source/quality/runtime/entrypoints/source.entrypoint.ts.txt",
  "tree": "quality",
  "siblings": {
    "next": {
      "href": "https://banes-lab.com/anatomy/quality#file-quality-runtime-entrypoints-target-entrypoint-ts",
      "json": "https://banes-lab.com/json/source/quality/runtime/entrypoints/target.entrypoint.ts",
      "label": "runtime/entrypoints/target.entrypoint.ts",
      "markdown": "https://banes-lab.com/source/quality/runtime/entrypoints/target.entrypoint.ts.md",
      "ref": "anatomy:file-quality-runtime-entrypoints-target-entrypoint-ts"
    },
    "previous": {
      "href": "https://banes-lab.com/anatomy/quality#file-quality-runtime-entrypoints-rule-entrypoint-ts",
      "json": "https://banes-lab.com/json/source/quality/runtime/entrypoints/rule.entrypoint.ts",
      "label": "runtime/entrypoints/rule.entrypoint.ts",
      "markdown": "https://banes-lab.com/source/quality/runtime/entrypoints/rule.entrypoint.ts.md",
      "ref": "anatomy:file-quality-runtime-entrypoints-rule-entrypoint-ts"
    }
  },
  "up": {
    "href": null,
    "json": "https://banes-lab.com/json/api/source/quality/runtime/entrypoints",
    "label": "runtime/entrypoints",
    "markdown": "https://banes-lab.com/api/source/quality/runtime/entrypoints.md",
    "ref": "api:source/quality/runtime/entrypoints"
  }
}
