{
  "definitions": [
    {
      "callable": true,
      "callees": [
        {
          "file": "core/converters/text.converter.ts",
          "name": "nodeText",
          "source": {
            "href": "https://banes-lab.com/anatomy/tree#file-core-converters-text-converter-ts",
            "json": "https://banes-lab.com/json/source/tree/core/converters/text.converter.ts",
            "label": "core/converters/text.converter.ts",
            "markdown": "https://banes-lab.com/source/tree/core/converters/text.converter.ts.md",
            "ref": "anatomy:file-core-converters-text-converter-ts"
          }
        },
        {
          "file": "core/normalizers/text.normalizer.ts",
          "name": "joinParts",
          "source": {
            "href": "https://banes-lab.com/anatomy/tree#file-core-normalizers-text-normalizer-ts",
            "json": "https://banes-lab.com/json/source/tree/core/normalizers/text.normalizer.ts",
            "label": "core/normalizers/text.normalizer.ts",
            "markdown": "https://banes-lab.com/source/tree/core/normalizers/text.normalizer.ts.md",
            "ref": "anatomy:file-core-normalizers-text-normalizer-ts"
          }
        }
      ],
      "callers": [
        {
          "file": "core/converters/text.converter.ts",
          "name": "bulletText",
          "source": {
            "href": "https://banes-lab.com/anatomy/tree#file-core-converters-text-converter-ts",
            "json": "https://banes-lab.com/json/source/tree/core/converters/text.converter.ts",
            "label": "core/converters/text.converter.ts",
            "markdown": "https://banes-lab.com/source/tree/core/converters/text.converter.ts.md",
            "ref": "anatomy:file-core-converters-text-converter-ts"
          }
        },
        {
          "file": "core/converters/text.converter.ts",
          "name": "childrenText",
          "source": {
            "href": "https://banes-lab.com/anatomy/tree#file-core-converters-text-converter-ts",
            "json": "https://banes-lab.com/json/source/tree/core/converters/text.converter.ts",
            "label": "core/converters/text.converter.ts",
            "markdown": "https://banes-lab.com/source/tree/core/converters/text.converter.ts.md",
            "ref": "anatomy:file-core-converters-text-converter-ts"
          }
        },
        {
          "file": "core/converters/text.converter.ts",
          "name": "nodeText",
          "source": {
            "href": "https://banes-lab.com/anatomy/tree#file-core-converters-text-converter-ts",
            "json": "https://banes-lab.com/json/source/tree/core/converters/text.converter.ts",
            "label": "core/converters/text.converter.ts",
            "markdown": "https://banes-lab.com/source/tree/core/converters/text.converter.ts.md",
            "ref": "anatomy:file-core-converters-text-converter-ts"
          }
        },
        {
          "file": "core/converters/text.converter.ts",
          "name": "nodeText",
          "source": {
            "href": "https://banes-lab.com/anatomy/tree#file-core-converters-text-converter-ts",
            "json": "https://banes-lab.com/json/source/tree/core/converters/text.converter.ts",
            "label": "core/converters/text.converter.ts",
            "markdown": "https://banes-lab.com/source/tree/core/converters/text.converter.ts.md",
            "ref": "anatomy:file-core-converters-text-converter-ts"
          }
        },
        {
          "file": "core/converters/text.converter.ts",
          "name": "nodeText",
          "source": {
            "href": "https://banes-lab.com/anatomy/tree#file-core-converters-text-converter-ts",
            "json": "https://banes-lab.com/json/source/tree/core/converters/text.converter.ts",
            "label": "core/converters/text.converter.ts",
            "markdown": "https://banes-lab.com/source/tree/core/converters/text.converter.ts.md",
            "ref": "anatomy:file-core-converters-text-converter-ts"
          }
        }
      ],
      "exported": false,
      "flow": "relay",
      "kind": "lexical_declaration",
      "line": 107,
      "name": "childrenJoined",
      "signature": "const childrenJoined = function childrenJoined(element: Element): string {"
    },
    {
      "callable": true,
      "callees": [],
      "callers": [
        {
          "file": "domain/converters/anatomy.converter.ts",
          "name": "count",
          "source": {
            "href": "https://banes-lab.com/anatomy/tree#file-domain-converters-anatomy-converter-ts",
            "json": "https://banes-lab.com/json/source/tree/domain/converters/anatomy.converter.ts",
            "label": "domain/converters/anatomy.converter.ts",
            "markdown": "https://banes-lab.com/source/tree/domain/converters/anatomy.converter.ts.md",
            "ref": "anatomy:file-domain-converters-anatomy-converter-ts"
          }
        },
        {
          "file": "domain/converters/anatomy.reference.converter.ts",
          "name": "counted",
          "source": {
            "href": "https://banes-lab.com/anatomy/tree#file-domain-converters-anatomy-reference-converter-ts",
            "json": "https://banes-lab.com/json/source/tree/domain/converters/anatomy.reference.converter.ts",
            "label": "domain/converters/anatomy.reference.converter.ts",
            "markdown": "https://banes-lab.com/source/tree/domain/converters/anatomy.reference.converter.ts.md",
            "ref": "anatomy:file-domain-converters-anatomy-reference-converter-ts"
          }
        },
        {
          "file": "domain/converters/graph.converter.ts",
          "name": "folderLabel",
          "source": {
            "href": "https://banes-lab.com/anatomy/tree#file-domain-converters-graph-converter-ts",
            "json": "https://banes-lab.com/json/source/tree/domain/converters/graph.converter.ts",
            "label": "domain/converters/graph.converter.ts",
            "markdown": "https://banes-lab.com/source/tree/domain/converters/graph.converter.ts.md",
            "ref": "anatomy:file-domain-converters-graph-converter-ts"
          }
        }
      ],
      "exported": true,
      "flow": "leaf",
      "kind": "lexical_declaration",
      "line": 203,
      "name": "nounFor",
      "signature": "export const nounFor = function nounFor(count: number, one: string, many: string): string {"
    },
    {
      "callable": true,
      "callees": [
        {
          "file": "core/converters/text.converter.ts",
          "name": "childrenJoined",
          "source": {
            "href": "https://banes-lab.com/anatomy/tree#file-core-converters-text-converter-ts",
            "json": "https://banes-lab.com/json/source/tree/core/converters/text.converter.ts",
            "label": "core/converters/text.converter.ts",
            "markdown": "https://banes-lab.com/source/tree/core/converters/text.converter.ts.md",
            "ref": "anatomy:file-core-converters-text-converter-ts"
          }
        },
        {
          "file": "core/converters/text.converter.ts",
          "name": "childrenJoined",
          "source": {
            "href": "https://banes-lab.com/anatomy/tree#file-core-converters-text-converter-ts",
            "json": "https://banes-lab.com/json/source/tree/core/converters/text.converter.ts",
            "label": "core/converters/text.converter.ts",
            "markdown": "https://banes-lab.com/source/tree/core/converters/text.converter.ts.md",
            "ref": "anatomy:file-core-converters-text-converter-ts"
          }
        },
        {
          "file": "core/converters/text.converter.ts",
          "name": "childrenJoined",
          "source": {
            "href": "https://banes-lab.com/anatomy/tree#file-core-converters-text-converter-ts",
            "json": "https://banes-lab.com/json/source/tree/core/converters/text.converter.ts",
            "label": "core/converters/text.converter.ts",
            "markdown": "https://banes-lab.com/source/tree/core/converters/text.converter.ts.md",
            "ref": "anatomy:file-core-converters-text-converter-ts"
          }
        },
        {
          "file": "core/converters/text.converter.ts",
          "name": "formatter",
          "source": {
            "href": "https://banes-lab.com/anatomy/tree#file-core-converters-text-converter-ts",
            "json": "https://banes-lab.com/json/source/tree/core/converters/text.converter.ts",
            "label": "core/converters/text.converter.ts",
            "markdown": "https://banes-lab.com/source/tree/core/converters/text.converter.ts.md",
            "ref": "anatomy:file-core-converters-text-converter-ts"
          }
        },
        {
          "file": "core/converters/text.converter.ts",
          "name": "formatter",
          "source": {
            "href": "https://banes-lab.com/anatomy/tree#file-core-converters-text-converter-ts",
            "json": "https://banes-lab.com/json/source/tree/core/converters/text.converter.ts",
            "label": "core/converters/text.converter.ts",
            "markdown": "https://banes-lab.com/source/tree/core/converters/text.converter.ts.md",
            "ref": "anatomy:file-core-converters-text-converter-ts"
          }
        },
        {
          "file": "core/normalizers/text.normalizer.ts",
          "name": "collapseSpaces",
          "source": {
            "href": "https://banes-lab.com/anatomy/tree#file-core-normalizers-text-normalizer-ts",
            "json": "https://banes-lab.com/json/source/tree/core/normalizers/text.normalizer.ts",
            "label": "core/normalizers/text.normalizer.ts",
            "markdown": "https://banes-lab.com/source/tree/core/normalizers/text.normalizer.ts.md",
            "ref": "anatomy:file-core-normalizers-text-normalizer-ts"
          }
        }
      ],
      "callers": [
        {
          "file": "core/converters/text.converter.ts",
          "name": "childrenJoined",
          "source": {
            "href": "https://banes-lab.com/anatomy/tree#file-core-converters-text-converter-ts",
            "json": "https://banes-lab.com/json/source/tree/core/converters/text.converter.ts",
            "label": "core/converters/text.converter.ts",
            "markdown": "https://banes-lab.com/source/tree/core/converters/text.converter.ts.md",
            "ref": "anatomy:file-core-converters-text-converter-ts"
          }
        },
        {
          "file": "core/converters/text.converter.ts",
          "name": "convertText",
          "source": {
            "href": "https://banes-lab.com/anatomy/tree#file-core-converters-text-converter-ts",
            "json": "https://banes-lab.com/json/source/tree/core/converters/text.converter.ts",
            "label": "core/converters/text.converter.ts",
            "markdown": "https://banes-lab.com/source/tree/core/converters/text.converter.ts.md",
            "ref": "anatomy:file-core-converters-text-converter-ts"
          }
        }
      ],
      "exported": false,
      "flow": "relay",
      "kind": "lexical_declaration",
      "line": 162,
      "name": "nodeText",
      "signature": "const nodeText = function nodeText(node: Node): string {"
    },
    {
      "callable": true,
      "callees": [
        {
          "file": "core/converters/text.converter.ts",
          "name": "nodeText",
          "source": {
            "href": "https://banes-lab.com/anatomy/tree#file-core-converters-text-converter-ts",
            "json": "https://banes-lab.com/json/source/tree/core/converters/text.converter.ts",
            "label": "core/converters/text.converter.ts",
            "markdown": "https://banes-lab.com/source/tree/core/converters/text.converter.ts.md",
            "ref": "anatomy:file-core-converters-text-converter-ts"
          }
        },
        {
          "file": "core/normalizers/text.normalizer.ts",
          "name": "collapseBreaks",
          "source": {
            "href": "https://banes-lab.com/anatomy/tree#file-core-normalizers-text-normalizer-ts",
            "json": "https://banes-lab.com/json/source/tree/core/normalizers/text.normalizer.ts",
            "label": "core/normalizers/text.normalizer.ts",
            "markdown": "https://banes-lab.com/source/tree/core/normalizers/text.normalizer.ts.md",
            "ref": "anatomy:file-core-normalizers-text-normalizer-ts"
          }
        }
      ],
      "callers": [
        {
          "file": "core/converters/text.converter.ts",
          "name": "exportText",
          "source": {
            "href": "https://banes-lab.com/anatomy/tree#file-core-converters-text-converter-ts",
            "json": "https://banes-lab.com/json/source/tree/core/converters/text.converter.ts",
            "label": "core/converters/text.converter.ts",
            "markdown": "https://banes-lab.com/source/tree/core/converters/text.converter.ts.md",
            "ref": "anatomy:file-core-converters-text-converter-ts"
          }
        },
        {
          "file": "presentation/renderers/section.renderer.ts",
          "name": "renderTitle",
          "source": {
            "href": "https://banes-lab.com/anatomy/tree#file-presentation-renderers-section-renderer-ts",
            "json": "https://banes-lab.com/json/source/tree/presentation/renderers/section.renderer.ts",
            "label": "presentation/renderers/section.renderer.ts",
            "markdown": "https://banes-lab.com/source/tree/presentation/renderers/section.renderer.ts.md",
            "ref": "anatomy:file-presentation-renderers-section-renderer-ts"
          }
        }
      ],
      "exported": true,
      "flow": "relay",
      "kind": "lexical_declaration",
      "line": 186,
      "name": "convertText",
      "signature": "export const convertText = function convertText(element: Element, ignored: readonly string[]): string {"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [
        {
          "file": "core/converters/text.converter.ts",
          "name": "nodeText",
          "source": {
            "href": "https://banes-lab.com/anatomy/tree#file-core-converters-text-converter-ts",
            "json": "https://banes-lab.com/json/source/tree/core/converters/text.converter.ts",
            "label": "core/converters/text.converter.ts",
            "markdown": "https://banes-lab.com/source/tree/core/converters/text.converter.ts.md",
            "ref": "anatomy:file-core-converters-text-converter-ts"
          }
        },
        {
          "file": "core/converters/text.converter.ts",
          "name": "nodeText",
          "source": {
            "href": "https://banes-lab.com/anatomy/tree#file-core-converters-text-converter-ts",
            "json": "https://banes-lab.com/json/source/tree/core/converters/text.converter.ts",
            "label": "core/converters/text.converter.ts",
            "markdown": "https://banes-lab.com/source/tree/core/converters/text.converter.ts.md",
            "ref": "anatomy:file-core-converters-text-converter-ts"
          }
        }
      ],
      "exported": false,
      "flow": "leaf",
      "kind": "lexical_declaration",
      "line": 176,
      "name": "formatter",
      "signature": "const formatter = FORMATTERS.get(node.tagName);"
    },
    {
      "callable": true,
      "callees": [
        {
          "file": "core/converters/text.converter.ts",
          "name": "isComposite",
          "source": {
            "href": "https://banes-lab.com/anatomy/tree#file-core-converters-text-converter-ts",
            "json": "https://banes-lab.com/json/source/tree/core/converters/text.converter.ts",
            "label": "core/converters/text.converter.ts",
            "markdown": "https://banes-lab.com/source/tree/core/converters/text.converter.ts.md",
            "ref": "anatomy:file-core-converters-text-converter-ts"
          }
        },
        {
          "file": "core/normalizers/text.normalizer.ts",
          "name": "collapseSpaces",
          "source": {
            "href": "https://banes-lab.com/anatomy/tree#file-core-normalizers-text-normalizer-ts",
            "json": "https://banes-lab.com/json/source/tree/core/normalizers/text.normalizer.ts",
            "label": "core/normalizers/text.normalizer.ts",
            "markdown": "https://banes-lab.com/source/tree/core/normalizers/text.normalizer.ts.md",
            "ref": "anatomy:file-core-normalizers-text-normalizer-ts"
          }
        },
        {
          "file": "core/normalizers/text.normalizer.ts",
          "name": "collapseSpaces",
          "source": {
            "href": "https://banes-lab.com/anatomy/tree#file-core-normalizers-text-normalizer-ts",
            "json": "https://banes-lab.com/json/source/tree/core/normalizers/text.normalizer.ts",
            "label": "core/normalizers/text.normalizer.ts",
            "markdown": "https://banes-lab.com/source/tree/core/normalizers/text.normalizer.ts.md",
            "ref": "anatomy:file-core-normalizers-text-normalizer-ts"
          }
        }
      ],
      "callers": [
        {
          "file": "core/converters/text.converter.ts",
          "name": "headingText",
          "source": {
            "href": "https://banes-lab.com/anatomy/tree#file-core-converters-text-converter-ts",
            "json": "https://banes-lab.com/json/source/tree/core/converters/text.converter.ts",
            "label": "core/converters/text.converter.ts",
            "markdown": "https://banes-lab.com/source/tree/core/converters/text.converter.ts.md",
            "ref": "anatomy:file-core-converters-text-converter-ts"
          }
        }
      ],
      "exported": false,
      "flow": "relay",
      "kind": "lexical_declaration",
      "line": 59,
      "name": "partsLabel",
      "signature": "const partsLabel = function partsLabel(element: Element): string {"
    },
    {
      "callable": true,
      "callees": [
        {
          "file": "core/converters/text.converter.ts",
          "name": "childrenJoined",
          "source": {
            "href": "https://banes-lab.com/anatomy/tree#file-core-converters-text-converter-ts",
            "json": "https://banes-lab.com/json/source/tree/core/converters/text.converter.ts",
            "label": "core/converters/text.converter.ts",
            "markdown": "https://banes-lab.com/source/tree/core/converters/text.converter.ts.md",
            "ref": "anatomy:file-core-converters-text-converter-ts"
          }
        }
      ],
      "callers": [
        {
          "file": "core/converters/text.converter.ts",
          "name": "blockText",
          "source": {
            "href": "https://banes-lab.com/anatomy/tree#file-core-converters-text-converter-ts",
            "json": "https://banes-lab.com/json/source/tree/core/converters/text.converter.ts",
            "label": "core/converters/text.converter.ts",
            "markdown": "https://banes-lab.com/source/tree/core/converters/text.converter.ts.md",
            "ref": "anatomy:file-core-converters-text-converter-ts"
          }
        }
      ],
      "exported": false,
      "flow": "relay",
      "kind": "lexical_declaration",
      "line": 117,
      "name": "childrenText",
      "signature": "const childrenText = function childrenText(element: Element): string {"
    },
    {
      "callable": true,
      "callees": [
        {
          "file": "core/converters/text.converter.ts",
          "name": "convertText",
          "source": {
            "href": "https://banes-lab.com/anatomy/tree#file-core-converters-text-converter-ts",
            "json": "https://banes-lab.com/json/source/tree/core/converters/text.converter.ts",
            "label": "core/converters/text.converter.ts",
            "markdown": "https://banes-lab.com/source/tree/core/converters/text.converter.ts.md",
            "ref": "anatomy:file-core-converters-text-converter-ts"
          }
        }
      ],
      "callers": [
        {
          "file": "presentation/renderers/page.shell.renderer.ts",
          "name": "renderPage",
          "source": {
            "href": "https://banes-lab.com/anatomy/tree#file-presentation-renderers-page-shell-renderer-ts",
            "json": "https://banes-lab.com/json/source/tree/presentation/renderers/page.shell.renderer.ts",
            "label": "presentation/renderers/page.shell.renderer.ts",
            "markdown": "https://banes-lab.com/source/tree/presentation/renderers/page.shell.renderer.ts.md",
            "ref": "anatomy:file-presentation-renderers-page-shell-renderer-ts"
          }
        }
      ],
      "exported": true,
      "flow": "relay",
      "kind": "lexical_declaration",
      "line": 199,
      "name": "exportText",
      "signature": "export const exportText = function exportText(element: Element): string {"
    },
    {
      "callable": true,
      "callees": [],
      "callers": [
        {
          "file": "core/converters/text.converter.ts",
          "name": "partsLabel",
          "source": {
            "href": "https://banes-lab.com/anatomy/tree#file-core-converters-text-converter-ts",
            "json": "https://banes-lab.com/json/source/tree/core/converters/text.converter.ts",
            "label": "core/converters/text.converter.ts",
            "markdown": "https://banes-lab.com/source/tree/core/converters/text.converter.ts.md",
            "ref": "anatomy:file-core-converters-text-converter-ts"
          }
        }
      ],
      "exported": false,
      "flow": "leaf",
      "kind": "lexical_declaration",
      "line": 55,
      "name": "isComposite",
      "signature": "const isComposite = function isComposite(element: Element): boolean {"
    },
    {
      "callable": true,
      "callees": [],
      "callers": [
        {
          "file": "core/converters/text.converter.ts",
          "name": "codeText",
          "source": {
            "href": "https://banes-lab.com/anatomy/tree#file-core-converters-text-converter-ts",
            "json": "https://banes-lab.com/json/source/tree/core/converters/text.converter.ts",
            "label": "core/converters/text.converter.ts",
            "markdown": "https://banes-lab.com/source/tree/core/converters/text.converter.ts.md",
            "ref": "anatomy:file-core-converters-text-converter-ts"
          }
        }
      ],
      "exported": false,
      "flow": "leaf",
      "kind": "lexical_declaration",
      "line": 73,
      "name": "fenceText",
      "signature": "const fenceText = function fenceText(element: Element): string {"
    },
    {
      "callable": true,
      "callees": [],
      "callers": [
        {
          "file": "core/converters/text.converter.ts",
          "name": "codeText",
          "source": {
            "href": "https://banes-lab.com/anatomy/tree#file-core-converters-text-converter-ts",
            "json": "https://banes-lab.com/json/source/tree/core/converters/text.converter.ts",
            "label": "core/converters/text.converter.ts",
            "markdown": "https://banes-lab.com/source/tree/core/converters/text.converter.ts.md",
            "ref": "anatomy:file-core-converters-text-converter-ts"
          }
        }
      ],
      "exported": false,
      "flow": "leaf",
      "kind": "lexical_declaration",
      "line": 86,
      "name": "wrapped",
      "signature": "const wrapped = function wrapped(mark: string): Formatter {"
    },
    {
      "callable": true,
      "callees": [
        {
          "file": "core/converters/text.converter.ts",
          "name": "fenceText",
          "source": {
            "href": "https://banes-lab.com/anatomy/tree#file-core-converters-text-converter-ts",
            "json": "https://banes-lab.com/json/source/tree/core/converters/text.converter.ts",
            "label": "core/converters/text.converter.ts",
            "markdown": "https://banes-lab.com/source/tree/core/converters/text.converter.ts.md",
            "ref": "anatomy:file-core-converters-text-converter-ts"
          }
        },
        {
          "file": "core/converters/text.converter.ts",
          "name": "wrapped",
          "source": {
            "href": "https://banes-lab.com/anatomy/tree#file-core-converters-text-converter-ts",
            "json": "https://banes-lab.com/json/source/tree/core/converters/text.converter.ts",
            "label": "core/converters/text.converter.ts",
            "markdown": "https://banes-lab.com/source/tree/core/converters/text.converter.ts.md",
            "ref": "anatomy:file-core-converters-text-converter-ts"
          }
        }
      ],
      "callers": [],
      "exported": false,
      "flow": "entry",
      "kind": "lexical_declaration",
      "line": 90,
      "name": "codeText",
      "signature": "const codeText = function codeText(element: Element): string {"
    },
    {
      "callable": true,
      "callees": [
        {
          "file": "core/converters/text.converter.ts",
          "name": "partsLabel",
          "source": {
            "href": "https://banes-lab.com/anatomy/tree#file-core-converters-text-converter-ts",
            "json": "https://banes-lab.com/json/source/tree/core/converters/text.converter.ts",
            "label": "core/converters/text.converter.ts",
            "markdown": "https://banes-lab.com/source/tree/core/converters/text.converter.ts.md",
            "ref": "anatomy:file-core-converters-text-converter-ts"
          }
        }
      ],
      "callers": [],
      "exported": false,
      "flow": "entry",
      "kind": "lexical_declaration",
      "line": 68,
      "name": "headingText",
      "signature": "const headingText = function headingText(element: Element): string {"
    },
    {
      "callable": true,
      "callees": [
        {
          "file": "core/converters/text.converter.ts",
          "name": "childrenJoined",
          "source": {
            "href": "https://banes-lab.com/anatomy/tree#file-core-converters-text-converter-ts",
            "json": "https://banes-lab.com/json/source/tree/core/converters/text.converter.ts",
            "label": "core/converters/text.converter.ts",
            "markdown": "https://banes-lab.com/source/tree/core/converters/text.converter.ts.md",
            "ref": "anatomy:file-core-converters-text-converter-ts"
          }
        }
      ],
      "callers": [],
      "exported": false,
      "flow": "entry",
      "kind": "lexical_declaration",
      "line": 113,
      "name": "bulletText",
      "signature": "const bulletText = function bulletText(element: Element): string {"
    },
    {
      "callable": true,
      "callees": [
        {
          "file": "core/converters/text.converter.ts",
          "name": "childrenText",
          "source": {
            "href": "https://banes-lab.com/anatomy/tree#file-core-converters-text-converter-ts",
            "json": "https://banes-lab.com/json/source/tree/core/converters/text.converter.ts",
            "label": "core/converters/text.converter.ts",
            "markdown": "https://banes-lab.com/source/tree/core/converters/text.converter.ts.md",
            "ref": "anatomy:file-core-converters-text-converter-ts"
          }
        }
      ],
      "callers": [],
      "exported": false,
      "flow": "entry",
      "kind": "lexical_declaration",
      "line": 131,
      "name": "blockText",
      "signature": "const blockText = function blockText(element: Element): string {"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 7,
      "name": "ICON_CLASS",
      "signature": "const ICON_CLASS = \"bi\";"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 8,
      "name": "PARAGRAPH",
      "signature": "const PARAGRAPH = \"\\n\\n\";"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 9,
      "name": "FENCE",
      "signature": "const FENCE = \"\\n```\\n\";"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 10,
      "name": "FENCE_OPEN",
      "signature": "const FENCE_OPEN = \"\\n```\";"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 11,
      "name": "BULLET",
      "signature": "const BULLET = \"\\n- \";"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 12,
      "name": "CELL",
      "signature": "const CELL = \" | \";"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 13,
      "name": "RULE",
      "signature": "const RULE = \"---\";"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 14,
      "name": "PIPE",
      "signature": "const PIPE = \"|\";"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 15,
      "name": "BOLD",
      "signature": "const BOLD = \"**\";"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 16,
      "name": "TERM_SEPARATOR",
      "signature": "const TERM_SEPARATOR = \" · \";"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 17,
      "name": "CODE_SELECTOR",
      "signature": "const CODE_SELECTOR = \"code\";"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 18,
      "name": "CODE_TITLE_SELECTOR",
      "signature": "const CODE_TITLE_SELECTOR = \".code-title\";"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 19,
      "name": "BLOCK_TAGS",
      "signature": "const BLOCK_TAGS = new Set(["
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "type_alias_declaration",
      "line": 36,
      "name": "Formatter",
      "signature": "type Formatter = (element: Element) => string;"
    },
    {
      "callable": true,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 38,
      "name": "cellsOf",
      "signature": "const cellsOf = function cellsOf(row: Element): readonly string[] {"
    },
    {
      "callable": true,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 42,
      "name": "tableText",
      "signature": "const tableText = function tableText(table: Element): string {"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 43,
      "name": "text",
      "signature": "let text = \"\";"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 44,
      "name": "rows",
      "signature": "const rows = [...table.querySelectorAll(\"tr\")];"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 46,
      "name": "cells",
      "signature": "const cells = cellsOf(row);"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 69,
      "name": "level",
      "signature": "const level = Number(element.tagName.slice(1));"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 74,
      "name": "code",
      "signature": "const code = element.querySelector(CODE_SELECTOR) ?? element;"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 75,
      "name": "block",
      "signature": "const block = element.closest(\"pre\");"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 76,
      "name": "language",
      "signature": "const language = block?.getAttribute(LANGUAGE_ATTRIBUTE) ?? \"\";"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 77,
      "name": "title",
      "signature": "const title = block?.querySelector(CODE_TITLE_SELECTOR);"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 78,
      "name": "caption",
      "signature": "const caption = title === null || title === undefined ? \"\" : PARAGRAPH + childrenText(title) + LINE_BREAK;"
    },
    {
      "callable": true,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 82,
      "name": "noText",
      "signature": "const noText = function noText(): string {"
    },
    {
      "callable": true,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 94,
      "name": "emphasisText",
      "signature": "const emphasisText = function emphasisText(element: Element): string {"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 98,
      "name": "inner",
      "signature": "const inner = childrenJoined(element);"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 99,
      "name": "trimmed",
      "signature": "const trimmed = inner.trim();"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 103,
      "name": "start",
      "signature": "const start = inner.indexOf(trimmed);"
    },
    {
      "callable": true,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 121,
      "name": "breakText",
      "signature": "const breakText = function breakText(): string {"
    },
    {
      "callable": true,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 125,
      "name": "termText",
      "signature": "const termText = function termText(element: Element): string {"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 126,
      "name": "parts",
      "signature": "const parts = [...element.children].map(partsLabel).filter((part) => part.length > 0);"
    },
    {
      "callable": true,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 135,
      "name": "linkText",
      "signature": "const linkText = function linkText(element: Element): string {"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 136,
      "name": "href",
      "signature": "const href = element.getAttribute(HREF_ATTRIBUTE) ?? \"\";"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 137,
      "name": "label",
      "signature": "const label = childrenText(element);"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 141,
      "name": "FORMATTERS",
      "signature": "const FORMATTERS = new Map<string, Formatter>(["
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 169,
      "name": "settled",
      "signature": "const settled = node.getAttribute(SETTLED_TEXT_ATTRIBUTE);"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 172,
      "name": "shown",
      "signature": "const shown = node.cloneNode(false);"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": true,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 187,
      "name": "clone",
      "signature": "const clone = element.cloneNode(true);"
    }
  ],
  "document": null,
  "findings": [],
  "generated": false,
  "href": "https://banes-lab.com/anatomy/tree#file-core-converters-text-converter-ts",
  "language": "typescript",
  "layer": "processing",
  "name": "text.converter.ts",
  "path": "core/converters/text.converter.ts",
  "ref": "anatomy:file-core-converters-text-converter-ts",
  "relations": [
    {
      "links": [
        {
          "href": "https://banes-lab.com/anatomy/tree#folder-core-converters",
          "json": "https://banes-lab.com/json/anatomy/tree/folder-core-converters",
          "label": "core/converters",
          "markdown": "https://banes-lab.com/anatomy/tree/folder-core-converters.md",
          "ref": "chapter:/anatomy/tree#folder-core-converters"
        }
      ],
      "relation": "contained-in"
    },
    {
      "links": [
        {
          "href": "https://banes-lab.com/anatomy/tree#file-core-normalizers-text-normalizer-ts",
          "json": "https://banes-lab.com/json/source/tree/core/normalizers/text.normalizer.ts",
          "label": "core/normalizers/text.normalizer.ts",
          "markdown": "https://banes-lab.com/source/tree/core/normalizers/text.normalizer.ts.md",
          "ref": "anatomy:file-core-normalizers-text-normalizer-ts"
        }
      ],
      "relation": "uses"
    },
    {
      "links": [
        {
          "href": "https://banes-lab.com/anatomy/tree#file-domain-converters-anatomy-converter-ts",
          "json": "https://banes-lab.com/json/source/tree/domain/converters/anatomy.converter.ts",
          "label": "domain/converters/anatomy.converter.ts",
          "markdown": "https://banes-lab.com/source/tree/domain/converters/anatomy.converter.ts.md",
          "ref": "anatomy:file-domain-converters-anatomy-converter-ts"
        },
        {
          "href": "https://banes-lab.com/anatomy/tree#file-domain-converters-anatomy-reference-converter-ts",
          "json": "https://banes-lab.com/json/source/tree/domain/converters/anatomy.reference.converter.ts",
          "label": "domain/converters/anatomy.reference.converter.ts",
          "markdown": "https://banes-lab.com/source/tree/domain/converters/anatomy.reference.converter.ts.md",
          "ref": "anatomy:file-domain-converters-anatomy-reference-converter-ts"
        },
        {
          "href": "https://banes-lab.com/anatomy/tree#file-domain-converters-graph-converter-ts",
          "json": "https://banes-lab.com/json/source/tree/domain/converters/graph.converter.ts",
          "label": "domain/converters/graph.converter.ts",
          "markdown": "https://banes-lab.com/source/tree/domain/converters/graph.converter.ts.md",
          "ref": "anatomy:file-domain-converters-graph-converter-ts"
        },
        {
          "href": "https://banes-lab.com/anatomy/tree#file-presentation-renderers-page-shell-renderer-ts",
          "json": "https://banes-lab.com/json/source/tree/presentation/renderers/page.shell.renderer.ts",
          "label": "presentation/renderers/page.shell.renderer.ts",
          "markdown": "https://banes-lab.com/source/tree/presentation/renderers/page.shell.renderer.ts.md",
          "ref": "anatomy:file-presentation-renderers-page-shell-renderer-ts"
        },
        {
          "href": "https://banes-lab.com/anatomy/tree#file-presentation-renderers-section-renderer-ts",
          "json": "https://banes-lab.com/json/source/tree/presentation/renderers/section.renderer.ts",
          "label": "presentation/renderers/section.renderer.ts",
          "markdown": "https://banes-lab.com/source/tree/presentation/renderers/section.renderer.ts.md",
          "ref": "anatomy:file-presentation-renderers-section-renderer-ts"
        }
      ],
      "relation": "used-by"
    },
    {
      "links": [
        {
          "href": "https://banes-lab.com/anatomy/tree#folder-core-converters",
          "json": "https://banes-lab.com/json/anatomy/tree/folder-core-converters",
          "label": "core/converters",
          "markdown": "https://banes-lab.com/anatomy/tree/folder-core-converters.md",
          "ref": "chapter:/anatomy/tree#folder-core-converters"
        },
        {
          "href": "https://banes-lab.com/anatomy/tree#folder-core-normalizers",
          "json": "https://banes-lab.com/json/anatomy/tree/folder-core-normalizers",
          "label": "core/normalizers",
          "markdown": "https://banes-lab.com/anatomy/tree/folder-core-normalizers.md",
          "ref": "chapter:/anatomy/tree#folder-core-normalizers"
        },
        {
          "href": "https://banes-lab.com/anatomy/tree#folder-domain-converters",
          "json": "https://banes-lab.com/json/anatomy/tree/folder-domain-converters",
          "label": "domain/converters",
          "markdown": "https://banes-lab.com/anatomy/tree/folder-domain-converters.md",
          "ref": "chapter:/anatomy/tree#folder-domain-converters"
        },
        {
          "href": "https://banes-lab.com/anatomy/tree#folder-presentation-renderers",
          "json": "https://banes-lab.com/json/anatomy/tree/folder-presentation-renderers",
          "label": "presentation/renderers",
          "markdown": "https://banes-lab.com/anatomy/tree/folder-presentation-renderers.md",
          "ref": "chapter:/anatomy/tree#folder-presentation-renderers"
        }
      ],
      "relation": "linked-from"
    }
  ],
  "slots": {
    "concern": "converter",
    "subject": "text",
    "variant": null
  },
  "stats": {
    "bytes": 6958,
    "callable": 21,
    "definitions": 55,
    "edges": 20,
    "exported": 4,
    "files": 1,
    "findings": {},
    "flows": {
      "relay": 6,
      "leaf": 5,
      "entry": 4,
      "isolated": 40
    },
    "lines": {
      "blank": 24,
      "code": 181,
      "total": 205
    }
  },
  "summary": "181 lines of code and 55 definitions.",
  "text": "https://banes-lab.com/source/tree/core/converters/text.converter.ts.txt",
  "tree": "tree",
  "siblings": {
    "next": null,
    "previous": {
      "href": "https://banes-lab.com/anatomy/tree#file-core-converters-template-converter-ts",
      "json": "https://banes-lab.com/json/source/tree/core/converters/template.converter.ts",
      "label": "core/converters/template.converter.ts",
      "markdown": "https://banes-lab.com/source/tree/core/converters/template.converter.ts.md",
      "ref": "anatomy:file-core-converters-template-converter-ts"
    }
  },
  "up": {
    "href": null,
    "json": "https://banes-lab.com/json/api/source/tree/core/converters",
    "label": "core/converters",
    "markdown": "https://banes-lab.com/api/source/tree/core/converters.md",
    "ref": "api:source/tree/core/converters"
  }
}
