--- regenerate: true exclude_from_search: true --- {% capture cache %} {% comment %} # ----------------------------------------------------------------------------- # ~/assets/data/docsearch.html # Liquid PROCEDURE to generate the HTML (data) portion of modal used # by the J1 DocSearch integration # # Product/Info: # https://jekyll.one # # Copyright (C) 2023, 2024 Juergen Adams # # J1 Template is licensed under the MIT License. # See: https://github.com/jekyll-one-org/j1-template/blob/main/LICENSE.md # ----------------------------------------------------------------------------- # Test data: # liquid_var: {{ liquid_var | debug }} # config: {{ config | debug }} # ----------------------------------------------------------------------------- {% endcomment %} {% comment %} Liquid procedures -------------------------------------------------------------------------------- {% endcomment %} {% comment %} Set global settings -------------------------------------------------------------------------------- {% endcomment %} {% assign environment = site.environment %} {% comment %} Set config files -------------------------------------------------------------------------------- {% endcomment %} {% assign modules = site.data.modules %} {% comment %} Process YML config data ================================================================================ {% endcomment %} {% comment %} Set config files -------------------------------------------------------------------------------- {% endcomment %} {% assign docsearch_defaults = modules.defaults.docsearch.defaults %} {% assign docsearch_settings = modules.docsearch.settings %} {% comment %} Set config options -------------------------------------------------------------------------------- {% endcomment %} {% assign docsearch_options = docsearch_defaults | merge: docsearch_settings %} {% comment %} Detect prod mode -------------------------------------------------------------------------------- {% endcomment %} {% assign production = false %} {% if environment == 'prod' or environment == 'production' %} {% assign production = true %} {% endif %} {% comment %} Main ================================================================================ {% endcomment %} <!-- [INFO ] [~/assets/data/docsearch.html ] [ set meta data (robots) to exclude HTML datafiles from index ] --> <head> <meta name="robots" content="noindex, nofollow"> </head> {% comment %} Modal DocSearch -------------------------------------------------------------------------------- {% endcomment %} <!-- start modal container --> <div id="docsearch-modal-data"> {% assign provider = docsearch_options.provider_settings.provider_id %} {% assign provider_id = docsearch_options.provider_settings.bot_id %} {% if provider == "documind" %} {% capture iframe_source %}https://documind.chat/dashboard/sharing/{{provider_id}}{% endcapture %} {% else %} {% capture iframe_source %}{% endcapture %} {% endif %} <!-- start modal --> <div id="docsearch-modal" class="modal-dialog modal-frame modal-top modal-notify modal-primary" data-bs-backdrop="static" data-bs-keyboard="false" tabindex="-1" role="document"> <!-- start modal content --> <div class="modal-content"> <div class="modal-header"> <p class="lead">{{docsearch_options.dialog_settings.modal_settings.title}}</p> </div> <!-- start modal body --> <div class="container mt-4"> <p style="margin-top: 0; margin-bottom: 1rem !important;"> <a href="#bccs-privacy" data-bs-toggle="collapse">Privacy Notice</a> </p> <div class="bccs-body-text r-text-300"> <p style="margin-bottom: 1rem !important;">{{docsearch_options.dialog_settings.modal_settings.body_text}}</p> </div> <div id="bccs-privacy" class="collapse"> <div class="bccs-body-text r-text-200"> <p class="tagline mt-4 mb-1"><b>Privacy Notice</b></p> <div class="d-inline-block g-width-50 g-height-2 bg-primary mb-3"></div> <p>{{docsearch_options.dialog_settings.modal_settings.privacy_notice}}</p> </div> </div> <iframe src="{{iframe_source}}" title="{{docsearch_options.bot_settings.iframe.title}}" allowtransparency="true" style="{{docsearch_options.bot_settings.iframe.style}}" scrolling="{{docsearch_options.bot_settings.iframe.scrolling}}" height="{{docsearch_options.bot_settings.iframe.height}}" width="{{docsearch_options.bot_settings.iframe.width}}"> </iframe> </div> <div class="modal-footer"> <button id="translator-buttonExit" type="button" class="btn btn-warning mb-1 mr-2" style="min-width: 10rem" data-bs-dismiss="modal"> Close </button> </div> <!-- end modal body --> </div> <!-- end modal content --> </div> <!-- end modal --> </div> <!-- end modal container --> {% comment %} END Modal DocSearch -------------------------------------------------------------------------------- {% endcomment %} {% endcapture %} {% if production %} {% capture _LINE_FEED %}{% endcapture %}{% if site.compress_html.ignore.envs contains jekyll.environment %}{{ cache | strip_html_comments }}{% else %}{% capture _content %}{{ cache | strip_html_comments }}{% endcapture %}{% assign _profile = site.compress_html.profile %}{% if site.compress_html.endings == "all" %}{% assign _endings = "html head body li dt dd p rt rp optgroup option colgroup caption thead tbody tfoot tr td th" | split: " " %}{% else %}{% assign _endings = site.compress_html.endings %}{% endif %}{% for _element in _endings %}{% capture _end %}</{{ _element }}>{% endcapture %}{% assign _content = _content | remove: _end %}{% endfor %}{% if _profile and _endings %}{% assign _profile_endings = _content | size | plus: 1 %}{% endif %}{% for _element in site.compress_html.startings %}{% capture _start %}<{{ _element }}>{% endcapture %}{% assign _content = _content | remove: _start %}{% endfor %}{% if _profile and site.compress_html.startings %}{% assign _profile_startings = _content | size | plus: 1 %}{% endif %}{% if site.compress_html.comments == "all" %}{% assign _comments = "<!-- -->" | split: " " %}{% else %}{% assign _comments = site.compress_html.comments %}{% endif %}{% if _comments.size == 2 %}{% capture _comment_befores %}.{{ _content }}{% endcapture %}{% assign _comment_befores = _comment_befores | split: _comments.first %}{% for _comment_before in _comment_befores %}{% if forloop.first %}{% continue %}{% endif %}{% capture _comment_outside %}{% if _carry %}{{ _comments.first }}{% endif %}{{ _comment_before }}{% endcapture %}{% capture _comment %}{% unless _carry %}{{ _comments.first }}{% endunless %}{{ _comment_outside | split: _comments.last | first }}{% if _comment_outside contains _comments.last %}{{ _comments.last }}{% assign _carry = false %}{% else %}{% assign _carry = true %}{% endif %}{% endcapture %}{% assign _content = _content | remove_first: _comment %}{% endfor %}{% if _profile %}{% assign _profile_comments = _content | size | plus: 1 %}{% endif %}{% endif %}{% assign _pre_befores = _content | split: "<pre" %}{% assign _content = "" %}{% for _pre_before in _pre_befores %}{% assign _pres = _pre_before | split: "</pre>" %}{% assign _pres_after = "" %}{% if _pres.size != 0 %}{% if site.compress_html.blanklines %}{% assign _lines = _pres.last | split: _LINE_FEED %}{% capture _pres_after %}{% for _line in _lines %}{% assign _trimmed = _line | split: " " | join: " " %}{% if _trimmed != empty or forloop.last %}{% unless forloop.first %}{{ _LINE_FEED }}{% endunless %}{{ _line }}{% endif %}{% endfor %}{% endcapture %}{% else %}{% assign _pres_after = _pres.last | split: " " | join: " " %}{% endif %}{% endif %}{% capture _content %}{{ _content }}{% if _pre_before contains "</pre>" %}<pre{{ _pres.first }}</pre>{% endif %}{% unless _pre_before contains "</pre>" and _pres.size == 1 %}{{ _pres_after }}{% endunless %}{% endcapture %}{% endfor %}{% if _profile %}{% assign _profile_collapse = _content | size | plus: 1 %}{% endif %}{% if site.compress_html.clippings == "all" %}{% assign _clippings = "html head title base link meta style body article section nav aside h1 h2 h3 h4 h5 h6 hgroup header footer address p hr blockquote ol ul li dl dt dd figure figcaption main div table caption colgroup col tbody thead tfoot tr td th" | split: " " %}{% else %}{% assign _clippings = site.compress_html.clippings %}{% endif %}{% for _element in _clippings %}{% assign _edges = " <e;<e; </e>;</e>;</e> ;</e>" | replace: "e", _element | split: ";" %}{% assign _content = _content | replace: _edges[0], _edges[1] | replace: _edges[2], _edges[3] | replace: _edges[4], _edges[5] %}{% endfor %}{% if _profile and _clippings %}{% assign _profile_clippings = _content | size | plus: 1 %}{% endif %}{{ _content }}{% if _profile %} <table id="compress_html_profile_{{ site.time | date: "%Y%m%d" }}" class="compress_html_profile"> <thead> <tr> <td>Step <td>Bytes <tbody> <tr> <td>raw <td>{{ cache | strip_html_comments | size }}{% if _profile_endings %} <tr> <td>endings <td>{{ _profile_endings }}{% endif %}{% if _profile_startings %} <tr> <td>startings <td>{{ _profile_startings }}{% endif %}{% if _profile_comments %} <tr> <td>comments <td>{{ _profile_comments }}{% endif %}{% if _profile_collapse %} <tr> <td>collapse <td>{{ _profile_collapse }}{% endif %}{% if _profile_clippings %} <tr> <td>clippings <td>{{ _profile_clippings }}{% endif %} </table>{% endif %}{% endif %} {% else %} {{ cache | remove:'<html><body>' | remove:'</body></html>' | strip_empty_lines }} {% endif %} {% assign cache = nil %}