{
  "definitions": [
    {
      "callable": true,
      "callees": [
        {
          "file": "core/converters/style.converter.ts",
          "name": "prioritize",
          "source": {
            "href": "https://banes-lab.com/anatomy/build-scripts#file-build-scripts-core-converters-style-converter-ts",
            "json": "https://banes-lab.com/json/source/build-scripts/core/converters/style.converter.ts",
            "label": "core/converters/style.converter.ts",
            "markdown": "https://banes-lab.com/source/build-scripts/core/converters/style.converter.ts.md",
            "ref": "anatomy:file-build-scripts-core-converters-style-converter-ts"
          }
        },
        {
          "file": "core/converters/style.converter.ts",
          "name": "withClass",
          "source": {
            "href": "https://banes-lab.com/anatomy/build-scripts#file-build-scripts-core-converters-style-converter-ts",
            "json": "https://banes-lab.com/json/source/build-scripts/core/converters/style.converter.ts",
            "label": "core/converters/style.converter.ts",
            "markdown": "https://banes-lab.com/source/build-scripts/core/converters/style.converter.ts.md",
            "ref": "anatomy:file-build-scripts-core-converters-style-converter-ts"
          }
        }
      ],
      "callers": [
        {
          "file": "core/converters/style.converter.ts",
          "name": "liftAttributes",
          "source": {
            "href": "https://banes-lab.com/anatomy/build-scripts#file-build-scripts-core-converters-style-converter-ts",
            "json": "https://banes-lab.com/json/source/build-scripts/core/converters/style.converter.ts",
            "label": "core/converters/style.converter.ts",
            "markdown": "https://banes-lab.com/source/build-scripts/core/converters/style.converter.ts.md",
            "ref": "anatomy:file-build-scripts-core-converters-style-converter-ts"
          }
        }
      ],
      "exported": false,
      "flow": "relay",
      "kind": "lexical_declaration",
      "line": 135,
      "name": "hoistTag",
      "signature": "const hoistTag = function hoistTag(tag: Tag, sheet: Sheet, isRoot: boolean): Tag {"
    },
    {
      "callable": true,
      "callees": [
        {
          "file": "core/converters/markup.converter.ts",
          "name": "serializeTag",
          "source": {
            "href": "https://banes-lab.com/anatomy/build-scripts#file-build-scripts-core-converters-markup-converter-ts",
            "json": "https://banes-lab.com/json/source/build-scripts/core/converters/markup.converter.ts",
            "label": "core/converters/markup.converter.ts",
            "markdown": "https://banes-lab.com/source/build-scripts/core/converters/markup.converter.ts.md",
            "ref": "anatomy:file-build-scripts-core-converters-markup-converter-ts"
          }
        },
        {
          "file": "core/converters/style.converter.ts",
          "name": "hoistTag",
          "source": {
            "href": "https://banes-lab.com/anatomy/build-scripts#file-build-scripts-core-converters-style-converter-ts",
            "json": "https://banes-lab.com/json/source/build-scripts/core/converters/style.converter.ts",
            "label": "core/converters/style.converter.ts",
            "markdown": "https://banes-lab.com/source/build-scripts/core/converters/style.converter.ts.md",
            "ref": "anatomy:file-build-scripts-core-converters-style-converter-ts"
          }
        }
      ],
      "callers": [
        {
          "file": "core/converters/style.converter.ts",
          "name": "hoistStyles",
          "source": {
            "href": "https://banes-lab.com/anatomy/build-scripts#file-build-scripts-core-converters-style-converter-ts",
            "json": "https://banes-lab.com/json/source/build-scripts/core/converters/style.converter.ts",
            "label": "core/converters/style.converter.ts",
            "markdown": "https://banes-lab.com/source/build-scripts/core/converters/style.converter.ts.md",
            "ref": "anatomy:file-build-scripts-core-converters-style-converter-ts"
          }
        }
      ],
      "exported": false,
      "flow": "relay",
      "kind": "lexical_declaration",
      "line": 172,
      "name": "liftAttributes",
      "signature": "const liftAttributes = function liftAttributes(markup: string, sheet: Sheet): string {"
    },
    {
      "callable": true,
      "callees": [
        {
          "file": "core/converters/markup.converter.ts",
          "name": "nextQuote",
          "source": {
            "href": "https://banes-lab.com/anatomy/build-scripts#file-build-scripts-core-converters-markup-converter-ts",
            "json": "https://banes-lab.com/json/source/build-scripts/core/converters/markup.converter.ts",
            "label": "core/converters/markup.converter.ts",
            "markdown": "https://banes-lab.com/source/build-scripts/core/converters/markup.converter.ts.md",
            "ref": "anatomy:file-build-scripts-core-converters-markup-converter-ts"
          }
        }
      ],
      "callers": [
        {
          "file": "core/converters/style.converter.ts",
          "name": "prioritize",
          "source": {
            "href": "https://banes-lab.com/anatomy/build-scripts#file-build-scripts-core-converters-style-converter-ts",
            "json": "https://banes-lab.com/json/source/build-scripts/core/converters/style.converter.ts",
            "label": "core/converters/style.converter.ts",
            "markdown": "https://banes-lab.com/source/build-scripts/core/converters/style.converter.ts.md",
            "ref": "anatomy:file-build-scripts-core-converters-style-converter-ts"
          }
        }
      ],
      "exported": false,
      "flow": "relay",
      "kind": "lexical_declaration",
      "line": 94,
      "name": "splitDeclarations",
      "signature": "const splitDeclarations = function splitDeclarations(text: string): string[] {"
    },
    {
      "callable": true,
      "callees": [
        {
          "file": "core/converters/style.converter.ts",
          "name": "splitDeclarations",
          "source": {
            "href": "https://banes-lab.com/anatomy/build-scripts#file-build-scripts-core-converters-style-converter-ts",
            "json": "https://banes-lab.com/json/source/build-scripts/core/converters/style.converter.ts",
            "label": "core/converters/style.converter.ts",
            "markdown": "https://banes-lab.com/source/build-scripts/core/converters/style.converter.ts.md",
            "ref": "anatomy:file-build-scripts-core-converters-style-converter-ts"
          }
        }
      ],
      "callers": [
        {
          "file": "core/converters/style.converter.ts",
          "name": "hoistTag",
          "source": {
            "href": "https://banes-lab.com/anatomy/build-scripts#file-build-scripts-core-converters-style-converter-ts",
            "json": "https://banes-lab.com/json/source/build-scripts/core/converters/style.converter.ts",
            "label": "core/converters/style.converter.ts",
            "markdown": "https://banes-lab.com/source/build-scripts/core/converters/style.converter.ts.md",
            "ref": "anatomy:file-build-scripts-core-converters-style-converter-ts"
          }
        }
      ],
      "exported": true,
      "flow": "relay",
      "kind": "lexical_declaration",
      "line": 117,
      "name": "prioritize",
      "signature": "export const prioritize = function prioritize(declarations: string): string {"
    },
    {
      "callable": true,
      "callees": [],
      "callers": [
        {
          "file": "core/stores/catalog.store.ts",
          "name": "addOne",
          "source": {
            "href": "https://banes-lab.com/anatomy/build-scripts#file-build-scripts-core-stores-catalog-store-ts",
            "json": "https://banes-lab.com/json/source/build-scripts/core/stores/catalog.store.ts",
            "label": "core/stores/catalog.store.ts",
            "markdown": "https://banes-lab.com/source/build-scripts/core/stores/catalog.store.ts.md",
            "ref": "anatomy:file-build-scripts-core-stores-catalog-store-ts"
          }
        }
      ],
      "exported": false,
      "flow": "leaf",
      "kind": "method_definition",
      "line": 46,
      "name": "render",
      "signature": "public render(): string {"
    },
    {
      "callable": true,
      "callees": [],
      "callers": [
        {
          "file": "core/converters/style.converter.ts",
          "name": "liftBlocks",
          "source": {
            "href": "https://banes-lab.com/anatomy/build-scripts#file-build-scripts-core-converters-style-converter-ts",
            "json": "https://banes-lab.com/json/source/build-scripts/core/converters/style.converter.ts",
            "label": "core/converters/style.converter.ts",
            "markdown": "https://banes-lab.com/source/build-scripts/core/converters/style.converter.ts.md",
            "ref": "anatomy:file-build-scripts-core-converters-style-converter-ts"
          }
        }
      ],
      "exported": false,
      "flow": "leaf",
      "kind": "lexical_declaration",
      "line": 86,
      "name": "renameDerived",
      "signature": "const renameDerived = function renameDerived(markup: string, rootId: string, derived: ReadonlySet<string>): string {"
    },
    {
      "callable": true,
      "callees": [],
      "callers": [
        {
          "file": "core/converters/style.converter.ts",
          "name": "hoistTag",
          "source": {
            "href": "https://banes-lab.com/anatomy/build-scripts#file-build-scripts-core-converters-style-converter-ts",
            "json": "https://banes-lab.com/json/source/build-scripts/core/converters/style.converter.ts",
            "label": "core/converters/style.converter.ts",
            "markdown": "https://banes-lab.com/source/build-scripts/core/converters/style.converter.ts.md",
            "ref": "anatomy:file-build-scripts-core-converters-style-converter-ts"
          }
        }
      ],
      "exported": false,
      "flow": "leaf",
      "kind": "lexical_declaration",
      "line": 123,
      "name": "withClass",
      "signature": "const withClass = function withClass(tag: Tag, className: string): Tag {"
    },
    {
      "callable": true,
      "callees": [
        {
          "file": "core/converters/markup.converter.ts",
          "name": "parseTag",
          "source": {
            "href": "https://banes-lab.com/anatomy/build-scripts#file-build-scripts-core-converters-markup-converter-ts",
            "json": "https://banes-lab.com/json/source/build-scripts/core/converters/markup.converter.ts",
            "label": "core/converters/markup.converter.ts",
            "markdown": "https://banes-lab.com/source/build-scripts/core/converters/markup.converter.ts.md",
            "ref": "anatomy:file-build-scripts-core-converters-markup-converter-ts"
          }
        },
        {
          "file": "core/selectors/markup.selector.ts",
          "name": "attributeOf",
          "source": {
            "href": "https://banes-lab.com/anatomy/build-scripts#file-build-scripts-core-selectors-markup-selector-ts",
            "json": "https://banes-lab.com/json/source/build-scripts/core/selectors/markup.selector.ts",
            "label": "core/selectors/markup.selector.ts",
            "markdown": "https://banes-lab.com/source/build-scripts/core/selectors/markup.selector.ts.md",
            "ref": "anatomy:file-build-scripts-core-selectors-markup-selector-ts"
          }
        }
      ],
      "callers": [],
      "exported": false,
      "flow": "entry",
      "kind": "lexical_declaration",
      "line": 143,
      "name": "rootIdOf",
      "signature": "const rootIdOf = function rootIdOf(markup: string): string {"
    },
    {
      "callable": true,
      "callees": [
        {
          "file": "core/converters/style.converter.ts",
          "name": "renameDerived",
          "source": {
            "href": "https://banes-lab.com/anatomy/build-scripts#file-build-scripts-core-converters-style-converter-ts",
            "json": "https://banes-lab.com/json/source/build-scripts/core/converters/style.converter.ts",
            "label": "core/converters/style.converter.ts",
            "markdown": "https://banes-lab.com/source/build-scripts/core/converters/style.converter.ts.md",
            "ref": "anatomy:file-build-scripts-core-converters-style-converter-ts"
          }
        }
      ],
      "callers": [],
      "exported": false,
      "flow": "entry",
      "kind": "lexical_declaration",
      "line": 149,
      "name": "liftBlocks",
      "signature": "const liftBlocks = function liftBlocks(markup: string, sheet: Sheet, rootId: string): string {"
    },
    {
      "callable": true,
      "callees": [
        {
          "file": "core/converters/style.converter.ts",
          "name": "liftAttributes",
          "source": {
            "href": "https://banes-lab.com/anatomy/build-scripts#file-build-scripts-core-converters-style-converter-ts",
            "json": "https://banes-lab.com/json/source/build-scripts/core/converters/style.converter.ts",
            "label": "core/converters/style.converter.ts",
            "markdown": "https://banes-lab.com/source/build-scripts/core/converters/style.converter.ts.md",
            "ref": "anatomy:file-build-scripts-core-converters-style-converter-ts"
          }
        }
      ],
      "callers": [],
      "exported": true,
      "flow": "entry",
      "kind": "lexical_declaration",
      "line": 199,
      "name": "hoistStyles",
      "signature": "export const hoistStyles = function hoistStyles(rendered: ReadonlyMap<string, string>): Hoisted {"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 6,
      "name": "TAG_OPEN",
      "signature": "const TAG_OPEN = \"<\";"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 7,
      "name": "STYLE_OPEN",
      "signature": "const STYLE_OPEN = \"<style>\";"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 8,
      "name": "STYLE_CLOSE",
      "signature": "const STYLE_CLOSE = \"</style>\";"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 9,
      "name": "STYLE_ATTRIBUTE",
      "signature": "const STYLE_ATTRIBUTE = \"style\";"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 10,
      "name": "CLASS_ATTRIBUTE",
      "signature": "const CLASS_ATTRIBUTE = \"class\";"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 11,
      "name": "ID_ATTRIBUTE",
      "signature": "const ID_ATTRIBUTE = \"id\";"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 12,
      "name": "ROOT_TAG",
      "signature": "const ROOT_TAG = \"svg\";"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 13,
      "name": "VECTOR_CLASS",
      "signature": "const VECTOR_CLASS = \"diagram-vector\";"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 14,
      "name": "RULE_CLASS_PREFIX",
      "signature": "const RULE_CLASS_PREFIX = \"diagram-style-\";"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 15,
      "name": "ID_MARK",
      "signature": "const ID_MARK = \"#\";"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 16,
      "name": "CLASS_MARK",
      "signature": "const CLASS_MARK = \".\";"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 17,
      "name": "SPACE",
      "signature": "const SPACE = \" \";"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 18,
      "name": "LINE_END",
      "signature": "const LINE_END = \"\\n\";"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 19,
      "name": "DECLARATION_END",
      "signature": "const DECLARATION_END = \";\";"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 20,
      "name": "IMPORTANT",
      "signature": "const IMPORTANT = \"!important\";"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 21,
      "name": "RULE_OPEN",
      "signature": "const RULE_OPEN = \"{\";"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 22,
      "name": "RULE_CLOSE",
      "signature": "const RULE_CLOSE = \"}\";"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 23,
      "name": "GROUP_OPEN",
      "signature": "const GROUP_OPEN = \"(\";"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 24,
      "name": "GROUP_CLOSE",
      "signature": "const GROUP_CLOSE = \")\";"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 25,
      "name": "NON_ELEMENT_OPENERS",
      "signature": "const NON_ELEMENT_OPENERS = new Set([\"/\", \"!\", \"?\"]);"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 26,
      "name": "IDENTIFIER_CHARS",
      "signature": "const IDENTIFIER_CHARS = new Set(\"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-_\");"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "class_declaration",
      "line": 28,
      "name": "Sheet",
      "signature": "class Sheet {"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "public_field_definition",
      "line": 29,
      "name": "blocks",
      "signature": "private readonly blocks = new Set<string>();"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "public_field_definition",
      "line": 30,
      "name": "classes",
      "signature": "private readonly classes = new Map<string, string>();"
    },
    {
      "callable": true,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "method_definition",
      "line": 32,
      "name": "addBlock",
      "signature": "public addBlock(css: string): void {"
    },
    {
      "callable": true,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "method_definition",
      "line": 36,
      "name": "classFor",
      "signature": "public classFor(declarations: string): string {"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 37,
      "name": "known",
      "signature": "const known = this.classes.get(declarations);"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 41,
      "name": "created",
      "signature": "const created = RULE_CLASS_PREFIX + String(this.classes.size + 1);"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 47,
      "name": "rules",
      "signature": "const rules = [...this.classes].map("
    },
    {
      "callable": true,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 54,
      "name": "identifierEnd",
      "signature": "const identifierEnd = function identifierEnd(text: string, from: number): number {"
    },
    {
      "callable": true,
      "callees": [],
      "callers": [],
      "exported": true,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 62,
      "name": "rescope",
      "signature": "export const rescope = function rescope(css: string, rootId: string): Rescoped {"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": true,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 63,
      "name": "needle",
      "signature": "const needle = ID_MARK + rootId;"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": true,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 71,
      "name": "found",
      "signature": "const found = css.indexOf(needle, at);"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": true,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 75,
      "name": "end",
      "signature": "const end = identifierEnd(css, found + needle.length);"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": true,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 76,
      "name": "suffix",
      "signature": "const suffix = css.slice(found + needle.length, end);"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 95,
      "name": "parts",
      "signature": "const parts: string[] = [];"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 96,
      "name": "depth",
      "signature": "let depth = 0;"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 97,
      "name": "quote",
      "signature": "let quote = \"\";"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 98,
      "name": "start",
      "signature": "let start = 0;"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 100,
      "name": "char",
      "signature": "const char = text.charAt(at);"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 101,
      "name": "wasQuoted",
      "signature": "const wasQuoted = quote !== \"\";"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 124,
      "name": "present",
      "signature": "const present = attributeOf(tag, CLASS_ATTRIBUTE) !== undefined;"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 125,
      "name": "attributes",
      "signature": "const attributes = present"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 136,
      "name": "style",
      "signature": "const style = attributeOf(tag, STYLE_ATTRIBUTE);"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 137,
      "name": "stripped",
      "signature": "const stripped = { ...tag, attributes: tag.attributes.filter((attribute) => attribute !== style) };"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 138,
      "name": "rooted",
      "signature": "const rooted = isRoot ? withClass(stripped, VECTOR_CLASS) : stripped;"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 139,
      "name": "declarations",
      "signature": "const declarations = decodeEntities(style?.value ?? \"\").trim();"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": true,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 150,
      "name": "derived",
      "signature": "const derived = new Set<string>();"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 161,
      "name": "rescoped",
      "signature": "const rescoped = rescope(decodeEntities(markup.slice(open + STYLE_OPEN.length, close)), rootId);"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": true,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 173,
      "name": "out",
      "signature": "let out = \"\";"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": true,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 174,
      "name": "at",
      "signature": "let at = 0;"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 175,
      "name": "rootSeen",
      "signature": "let rootSeen = false;"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 177,
      "name": "open",
      "signature": "const open = markup.indexOf(TAG_OPEN, at);"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 181,
      "name": "close",
      "signature": "const close = NON_ELEMENT_OPENERS.has(markup.charAt(open + 1)) ? -1 : tagEnd(markup, open + 1);"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 187,
      "name": "tag",
      "signature": "const tag = parseTag(markup.slice(open + 1, close));"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 188,
      "name": "isRoot",
      "signature": "const isRoot: boolean = !rootSeen && tag.name === ROOT_TAG;"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": false,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 190,
      "name": "touched",
      "signature": "const touched = isRoot || attributeOf(tag, STYLE_ATTRIBUTE) !== undefined;"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": true,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 200,
      "name": "sheet",
      "signature": "const sheet = new Sheet();"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": true,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 201,
      "name": "vectors",
      "signature": "const vectors = new Map<string, string>();"
    },
    {
      "callable": false,
      "callees": [],
      "callers": [],
      "exported": true,
      "flow": "isolated",
      "kind": "lexical_declaration",
      "line": 203,
      "name": "lifted",
      "signature": "const lifted = liftBlocks(markup, sheet, rootIdOf(markup));"
    }
  ],
  "document": null,
  "findings": [],
  "generated": false,
  "href": "https://banes-lab.com/anatomy/build-scripts#file-build-scripts-core-converters-style-converter-ts",
  "language": "typescript",
  "layer": "processing",
  "name": "style.converter.ts",
  "path": "core/converters/style.converter.ts",
  "ref": "anatomy:file-build-scripts-core-converters-style-converter-ts",
  "relations": [
    {
      "links": [
        {
          "href": "https://banes-lab.com/anatomy/build-scripts#folder-build-scripts-core-converters",
          "json": "https://banes-lab.com/json/anatomy/build-scripts/folder-build-scripts-core-converters",
          "label": "core/converters",
          "markdown": "https://banes-lab.com/anatomy/build-scripts/folder-build-scripts-core-converters.md",
          "ref": "chapter:/anatomy/build-scripts#folder-build-scripts-core-converters"
        }
      ],
      "relation": "contained-in"
    },
    {
      "links": [
        {
          "href": "https://banes-lab.com/anatomy/build-scripts#file-build-scripts-core-converters-markup-converter-ts",
          "json": "https://banes-lab.com/json/source/build-scripts/core/converters/markup.converter.ts",
          "label": "core/converters/markup.converter.ts",
          "markdown": "https://banes-lab.com/source/build-scripts/core/converters/markup.converter.ts.md",
          "ref": "anatomy:file-build-scripts-core-converters-markup-converter-ts"
        },
        {
          "href": "https://banes-lab.com/anatomy/build-scripts#file-build-scripts-core-selectors-markup-selector-ts",
          "json": "https://banes-lab.com/json/source/build-scripts/core/selectors/markup.selector.ts",
          "label": "core/selectors/markup.selector.ts",
          "markdown": "https://banes-lab.com/source/build-scripts/core/selectors/markup.selector.ts.md",
          "ref": "anatomy:file-build-scripts-core-selectors-markup-selector-ts"
        }
      ],
      "relation": "uses"
    },
    {
      "links": [
        {
          "href": "https://banes-lab.com/anatomy/build-scripts#file-build-scripts-core-stores-catalog-store-ts",
          "json": "https://banes-lab.com/json/source/build-scripts/core/stores/catalog.store.ts",
          "label": "core/stores/catalog.store.ts",
          "markdown": "https://banes-lab.com/source/build-scripts/core/stores/catalog.store.ts.md",
          "ref": "anatomy:file-build-scripts-core-stores-catalog-store-ts"
        }
      ],
      "relation": "used-by"
    },
    {
      "links": [
        {
          "href": "https://banes-lab.com/anatomy/build-scripts#folder-build-scripts-core-converters",
          "json": "https://banes-lab.com/json/anatomy/build-scripts/folder-build-scripts-core-converters",
          "label": "core/converters",
          "markdown": "https://banes-lab.com/anatomy/build-scripts/folder-build-scripts-core-converters.md",
          "ref": "chapter:/anatomy/build-scripts#folder-build-scripts-core-converters"
        },
        {
          "href": "https://banes-lab.com/anatomy/build-scripts#folder-build-scripts-core-selectors",
          "json": "https://banes-lab.com/json/anatomy/build-scripts/folder-build-scripts-core-selectors",
          "label": "core/selectors",
          "markdown": "https://banes-lab.com/anatomy/build-scripts/folder-build-scripts-core-selectors.md",
          "ref": "chapter:/anatomy/build-scripts#folder-build-scripts-core-selectors"
        },
        {
          "href": "https://banes-lab.com/anatomy/build-scripts#folder-build-scripts-core-stores",
          "json": "https://banes-lab.com/json/anatomy/build-scripts/folder-build-scripts-core-stores",
          "label": "core/stores",
          "markdown": "https://banes-lab.com/anatomy/build-scripts/folder-build-scripts-core-stores.md",
          "ref": "chapter:/anatomy/build-scripts#folder-build-scripts-core-stores"
        }
      ],
      "relation": "linked-from"
    }
  ],
  "slots": {
    "concern": "converter",
    "subject": "style",
    "variant": null
  },
  "stats": {
    "bytes": 7646,
    "callable": 14,
    "definitions": 70,
    "edges": 10,
    "exported": 13,
    "files": 1,
    "findings": {},
    "flows": {
      "relay": 4,
      "leaf": 3,
      "entry": 3,
      "isolated": 60
    },
    "lines": {
      "blank": 16,
      "code": 191,
      "total": 207
    }
  },
  "summary": "191 lines of code and 70 definitions.",
  "text": "https://banes-lab.com/source/build-scripts/core/converters/style.converter.ts.txt",
  "tree": "build-scripts",
  "siblings": {
    "next": {
      "href": "https://banes-lab.com/anatomy/build-scripts#file-build-scripts-core-converters-surface-converter-ts",
      "json": "https://banes-lab.com/json/source/build-scripts/core/converters/surface.converter.ts",
      "label": "core/converters/surface.converter.ts",
      "markdown": "https://banes-lab.com/source/build-scripts/core/converters/surface.converter.ts.md",
      "ref": "anatomy:file-build-scripts-core-converters-surface-converter-ts"
    },
    "previous": {
      "href": "https://banes-lab.com/anatomy/build-scripts#file-build-scripts-core-converters-structure-converter-ts",
      "json": "https://banes-lab.com/json/source/build-scripts/core/converters/structure.converter.ts",
      "label": "core/converters/structure.converter.ts",
      "markdown": "https://banes-lab.com/source/build-scripts/core/converters/structure.converter.ts.md",
      "ref": "anatomy:file-build-scripts-core-converters-structure-converter-ts"
    }
  },
  "up": {
    "href": null,
    "json": "https://banes-lab.com/json/api/source/build-scripts/core/converters",
    "label": "core/converters",
    "markdown": "https://banes-lab.com/api/source/build-scripts/core/converters.md",
    "ref": "api:source/build-scripts/core/converters"
  }
}
