site_name: BookLab
site_author: 'Petre Iordanescu (petre.iordanescu@gmail.com)'
copyright: Freeware



nav:
    - Acasa: index.md
    - Vedere de ansamblu: help/130.02-Overview.md
    - Catalog carti: bcat/ #NOTE will direct-fwd to `http://<crt_server_name>/bcat/`
    - Carte noua: newb/ #NOTE will direct-fwd to `http://<crt_server_name>/newb/`
    - Help:
        - Manuale de utilizare:
            - Indexul manuale EUMA: help/880.30-EUMA_catalog.md
            - Catalogul manualelor: help/880.30-BCAT_usage.md
            #NOTE - add here EUMA manuals piece-by-piece when they are finished
        - Manuale de configurare:
            - Indexul manuale ADMA: help/880.30-ADMA_catalog.md
            - Fisierul de configurare a cartii: help/880.30-TMPL_usage.md
    - About:
        - Despre BookLab: about/
        - Contact: https://www.renware.eu/contact.html
    - Pentru Dezvoltatori:
        - Arhitectura sistemului: 810-DSGN/810.02-System_Landscape.md
        - Catalogul cartilor format JSON: developer/books_catalog.json
        - API packet booklab: developer/810.05a-booklab_DLD_specs.md
        - Versiunea in format text: /booklab/api/version/
        - Design detaliat module:
            - modul Initializare sistem (sysInit): 810-DSGN/810.05a-sysInit_System_Process.md
            - modul Catalog Carti (BCAT): 810-DSGN/810.05a-bcat_System_Process.md
            - modul Sablon Carti (TMPL): 810-DSGN/810.05a-btmpl_System_Process.md
            - modul Carte Noua (NEWB): 810-DSGN/810.05a-newb_System_Process.md
            - modul Editare Carte (EDTM): 810-DSGN/810.05a-edtm_System_Process.md
            - modul Organizare Carte (ORGM): 810-DSGN/810.05a-orgm_System_Process.md
            - modul Previzualizare Carte (PRVB): 810-DSGN/810.05a-prvb_System_Process.md
            - modul Generare Carte (DPLB): 810-DSGN/810.05a-dplb_System_Process.md




markdown_extensions:
    - admonition
    - tables
    - pymdownx.details
    - pymdownx.superfences:
        custom_fences: #NOTE: [petre iordanescu]: is very important to respect syntax ref `-` character at beginning of items (otherwise not right JSON result !)
            - name: mermaid
              class: mermaid
              format: !!python/name:pymdownx.superfences.fence_code_format
    - footnotes
    - pymdownx.critic
    - pymdownx.caret
    - pymdownx.keys
    - pymdownx.mark
    - pymdownx.tilde
    - def_list
    - attr_list
    - md_in_html
    - pymdownx.tasklist:
        custom_checkbox: true
    # super fences for code bloks syntax highlight
    - pymdownx.highlight:
          anchor_linenums: true
          line_spans: __span
          pygments_lang_class: true
    - pymdownx.inlinehilite
    - pymdownx.snippets
    - pymdownx.superfences




# extra:
#  alternate: #NOTE language options - FUTURE FEATURE - should first have a translation...
#    - name: English
#      link: /
#      lang: en
#    - name: Romanian
#      link: /ro/
#      lang: ro




#NOTE required to render `mermaid` diagrams
extra_javascript:
  - optionalConfig.js
  - https://unpkg.com/mermaid@9.4.0/dist/mermaid.min.js
  - extra-loader.js





plugins:
    - search
    - include-markdown
    - table-reader #NOTE used for staic tables rendering from various sources (CSV, JSON, etc as available in Pandas)
    - macros #NOTE use external jinja variables and macros (see `https://mkdocs-macros-plugin.readthedocs.io/en/latest/`)
    - markdown-exec #NOTE Python execution inside markdown files (execution at build time, "compilation like" NOT dynamically NOT JavaScript)
    - git-revision-date-localized
#    - pdf-export  #NOTE DO NOT USE this as does not render mermaid in PDF docs
#    - print-site: #NOTE_IMPORTANT_#NOTE put `print-site` plug in BEFORE `pdf-with-js` in order to works the workaround wit a fake `print_page.md` that will determine generation of 'print_page.pdf' as any other page generated pdf by `pdf-with-js`; ingnore warning ` [mkdocs-print-site] 'print-site' should be defined as the *last* plugin,to ensure...`
        # add_to_navigation: true #NOTE not needed here
        # print_page_title: 'Complete BookLab Manual' #NOTE not needed here
#        add_full_urls: true
#        add_table_of_contents: true
#    - pdf-with-js:
#        enable: true



#NOTE provide material theme
theme:
    # language: en #NOTE FUTURE FEATURE - should first have a translation...
    logo: pictures/booklab_logo.png
    name: material
    features:
        - navigation.tabs # left navigation side bar, all level 1 will be shown as top navigation bar
        - navigation.tracking
        - navigation.tabs.sticky
        - navigation.path
        #- toc.integrate #NOTE integrates all navigation only in left nav bar
        - content.code.copy

    palette:
        primary: black # see https://squidfunk.github.io/mkdocs-material/setup/changing-the-colors/ for other color options
        accent: blue
    icon:
        admonition:
            note: fontawesome/solid/note-sticky
            abstract: fontawesome/solid/book
            info: fontawesome/solid/circle-info
            tip: fontawesome/solid/bullhorn
            success: fontawesome/solid/check
            question: fontawesome/solid/circle-question
            warning: fontawesome/solid/triangle-exclamation
            failure: fontawesome/solid/bomb
            danger: fontawesome/solid/skull
            bug: fontawesome/solid/robot
            example: fontawesome/solid/flask
            quote: fontawesome/solid/quote-left








# or can use readthedocstheme
# theme: readthedocs


# directory where start to search or markdown sources
docs_dir: './doc_src'

# root directory where to be generated portal
site_dir: './docs'

# other useful configurations
use_directory_urls: false # allow link between pages to work properly as static site an "callable" as `file:///...`


#NOTE dirs to exclude at BookLab project creation
exclude_docs: |
  pyenv/


