Skip to content

Commit

Permalink
initial docs for the new Template Service
Browse files Browse the repository at this point in the history
  • Loading branch information
iJungleboy committed May 10, 2024
1 parent 64e77dd commit e6c2369
Show file tree
Hide file tree
Showing 12 changed files with 1,374 additions and 50 deletions.
5 changes: 3 additions & 2 deletions docs/abyss/releases/roadmap.html
Original file line number Diff line number Diff line change
Expand Up @@ -123,13 +123,14 @@ <h2 id="may-4th-and-the-following-days---release-spree">May 4th and the followin
<li>✅/✅ 2shine 5.3 (May 4th)</li>
<li>✅/✅ Content App 17.07 (May 6th)</li>
<li>✅/✅ Mobius Form Builder 06.00 for 2sxc 17.07 (May 7th)</li>
<li>⌛/🔳 Release all apps as typed (May 8th)</li>
<li>✅/✅ Release all apps as typed (May 8th)</li>
</ol>
<h2 id="2024-q2-finish-dod--almost-done-work">2024 Q2 Finish DoD / Almost-Done Work</h2>
<ol>
<li>✅ WebApi in AppCode</li>
<li>✅ DataSources in AppCode</li>
<li><code>ITemplateService</code></li>
<li><code>ITemplateService</code></li>
<li>✅ Add <code>CmsContext.Block</code> and <code>CmsContext.Module.Block</code> as well as <code>Block.Guid</code></li>
<li>⌛ Dnn Force use of Roslyn</li>
<li>⌛ Include Dlls on Compile for Dnn/Oqtane</li>
<li>Improve Intellisense
Expand Down
563 changes: 563 additions & 0 deletions docs/api/dot-net/ToSic.Sxc.Services.ITemplateService.html

Large diffs are not rendered by default.

33 changes: 33 additions & 0 deletions docs/api/dot-net/ToSic.Sxc.Services.ServiceKit16.html
Original file line number Diff line number Diff line change
Expand Up @@ -739,6 +739,39 @@ <h4 class="section">Property Value</h4>



<a id="ToSic_Sxc_Services_ServiceKit16_Template_" data-uid="ToSic.Sxc.Services.ServiceKit16.Template*"></a>

<h3 id="ToSic_Sxc_Services_ServiceKit16_Template" data-uid="ToSic.Sxc.Services.ServiceKit16.Template">
Template
<a class="header-action link-secondary" title="View source" href="https://github.com/2sic/2sxc/blob/develop/Src/Sxc/ToSic.Sxc/Services/ServiceKits/ServiceKit16.cs/#L125"><i class="bi bi-code-slash"></i></a>
</h3>

<div class="markdown level1 summary"><p>Templates service, which can parse strings containing placeholders.</p>
</div>
<div class="markdown level1 conceptual"></div>

<div class="codewrapper">
<pre><code class="lang-csharp hljs">[InternalApi_DoNotUse_MayChangeWithoutNotice(&quot;Still Beta in v17.08&quot;)]
public ITemplateService Template { get; }</code></pre>
</div>





<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><a class="xref" href="ToSic.Sxc.Services.ITemplateService.html">ITemplateService</a></dt>
<dd></dd>
</dl>








<a id="ToSic_Sxc_Services_ServiceKit16_Toolbar_" data-uid="ToSic.Sxc.Services.ServiceKit16.Toolbar*"></a>

<h3 id="ToSic_Sxc_Services_ServiceKit16_Toolbar" data-uid="ToSic.Sxc.Services.ServiceKit16.Toolbar">
Expand Down
5 changes: 5 additions & 0 deletions docs/api/dot-net/ToSic.Sxc.Services.html
Original file line number Diff line number Diff line change
Expand Up @@ -277,6 +277,11 @@ <h3 id="interfaces">
<dl class="jumplist">
<dt><a class="xref" href="ToSic.Sxc.Services.ISystemLogService.html">ISystemLogService</a></dt>
<dd><p>System-Log Service to add messages to the global log in any platform Dnn/Oqtane</p>
</dd>
</dl>
<dl class="jumplist">
<dt><a class="xref" href="ToSic.Sxc.Services.ITemplateService.html">ITemplateService</a></dt>
<dd><p>Service to help parse token-based templates.</p>
</dd>
</dl>
<dl class="jumplist">
Expand Down
267 changes: 267 additions & 0 deletions docs/api/dot-net/ToSic.Sxc.Templates.ITemplateEngine.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,267 @@
<!DOCTYPE html>
<html>
<!-- 2sxc docs -->
<head>
<meta charset="utf-8">
<title>Interface ITemplateEngine
| 2sxc 17 for Dnn and Oqtane </title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="title" content="Interface ITemplateEngine
| 2sxc 17 for Dnn and Oqtane ">

<link rel="icon" href="../../assets/favicon.ico">
<link rel="stylesheet" href="../../public/docfx.min.css">
<link rel="stylesheet" href="../../public/main.css">
<meta name="docfx:navrel" content="../../toc.html">
<meta name="docfx:tocrel" content="toc.html">

<meta name="docfx:rel" content="../../">


<meta name="docfx:docurl" content="https://github.com/2sic/2sxc/new/develop/apiSpec/new?filename=ToSic_Sxc_Templates_ITemplateEngine.md&amp;value=---%0Auid%3A%20ToSic.Sxc.Templates.ITemplateEngine%0Asummary%3A%20&#39;*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax&#39;%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">
<meta name="loc:inThisArticle" content="In this article">
<meta name="loc:searchResultsCount" content="{count} results for &quot;{query}&quot;">
<meta name="loc:searchNoResults" content="No results for &quot;{query}&quot;">
<meta name="loc:tocFilter" content="Filter by title">
<meta name="loc:nextArticle" content="Next">
<meta name="loc:prevArticle" content="Previous">
<meta name="loc:themeLight" content="Light">
<meta name="loc:themeDark" content="Dark">
<meta name="loc:themeAuto" content="Auto">
<meta name="loc:changeTheme" content="Change theme">
<meta name="loc:copy" content="Copy">
<meta name="loc:downloadPdf" content="Download PDF">

<script src="https://cdn.jsdelivr.net/npm/@fancyapps/[email protected]/dist/fancybox/fancybox.umd.js"></script>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@fancyapps/[email protected]/dist/fancybox/fancybox.css">


</head>

<script type="module" src="./../../public/docfx.min.js"></script>

<script>
const theme = localStorage.getItem('theme') || 'auto'
document.documentElement.setAttribute('data-bs-theme', theme === 'auto' ? (window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light') : theme)
</script>

<script async="" src="https://www.googletagmanager.com/gtag/js?id=GTM-PH2TVNW"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag() { dataLayer.push(arguments); }
gtag('js', new Date());
gtag('config', 'GTM-PH2TVNW');
</script>

<body class="tex2jax_ignore" data-layout="" data-yaml-mime="ManagedReference">
<header class="bg-body border-bottom">
<nav id="autocollapse" class="navbar navbar-expand-md" role="navigation">
<div class="container-xxl flex-nowrap">
<a class="navbar-brand" href="../../index.html">
<img id="logo" class="svg" src="../../assets/logos/vcurrent/50.png" alt="">

</a>
<button class="btn btn-lg d-md-none border-0" type="button" data-bs-toggle="collapse" data-bs-target="#navpanel" aria-controls="navpanel" aria-expanded="false" aria-label="Toggle navigation">
<i class="bi bi-three-dots"></i>
</button>
<div class="collapse navbar-collapse" id="navpanel">
<div id="navbar">



<form class="search" role="search" id="search">
<i class="bi bi-search"></i>
<input class="form-control" id="search-query" type="search" disabled="" placeholder="Search" autocomplete="off" aria-label="Search">

<a class="btn btn-sm border-0 text-nowrap version-button" xstyle="padding: 10px 0 0 0; width: 25px" href="https://go.2sxc.org/docs-versions" target="_blank">
&nbsp; v17 <i class="bi bi-caret-down-fill fs-6"></i>
</a>
</form>


</div>
</div>
</div>
</nav>
</header>

<main class="container-xxl">
<div class="toc-offcanvas">
<div class="offcanvas-md offcanvas-start" tabindex="-1" id="tocOffcanvas" aria-labelledby="tocOffcanvasLabel">
<div class="offcanvas-header">
<h5 class="offcanvas-title" id="tocOffcanvasLabel">Table of Contents</h5>
<button type="button" class="btn-close" data-bs-dismiss="offcanvas" data-bs-target="#tocOffcanvas" aria-label="Close"></button>
</div>
<div class="offcanvas-body">
<nav class="toc" id="toc"></nav>
</div>
</div>
</div>

<div class="content">
<div class="actionbar">
<button class="btn btn-lg border-0 d-md-none" style="margin-top: -.65em; margin-left: -.8em" type="button" data-bs-toggle="offcanvas" data-bs-target="#tocOffcanvas" aria-controls="tocOffcanvas" aria-expanded="false" aria-label="Show table of contents">
<i class="bi bi-list"></i>
</button>

<nav id="breadcrumb"></nav>
</div>

<article data-uid="ToSic.Sxc.Templates.ITemplateEngine">



<h1 id="ToSic_Sxc_Templates_ITemplateEngine" data-uid="ToSic.Sxc.Templates.ITemplateEngine" class="text-break">
Interface ITemplateEngine
<a class="header-action link-secondary" title="View source" href="https://github.com/2sic/2sxc/blob/develop/Src/Sxc/ToSic.Sxc/Templates/ITemplateEngine.cs/#L11"><i class="bi bi-code-slash"></i></a>
</h1>

<div class="facts text-secondary">
<dl><dt>Namespace</dt><dd><a class="xref" href="ToSic.html">ToSic</a>.<a class="xref" href="ToSic.Sxc.html">Sxc</a>.<a class="xref" href="ToSic.Sxc.Templates.html">Templates</a></dd></dl>
<dl><dt>Assembly</dt><dd>ToSic.Sxc.dll</dd></dl>
</div>

<div class="markdown summary"><p>Engine which parses a template containing placeholders and replaces them with values from sources.</p>
</div>
<div class="markdown conceptual"></div>

<div class="codewrapper">
<pre><code class="lang-csharp hljs">[InternalApi_DoNotUse_MayChangeWithoutNotice(&quot;Still Beta in v17.08&quot;)]
public interface ITemplateEngine</code></pre>
</div>











<h2 id="ToSic_Sxc_Templates_ITemplateEngine_remarks">Remarks</h2>
<div class="markdown level0 remarks"><p>New / beta in v17.08</p>
</div>


<h2 class="section" id="methods">Methods
</h2>


<a id="ToSic_Sxc_Templates_ITemplateEngine_GetSources_" data-uid="ToSic.Sxc.Templates.ITemplateEngine.GetSources*"></a>

<h3 id="ToSic_Sxc_Templates_ITemplateEngine_GetSources_ToSic_Lib_Coding_NoParamOrder_System_Int32_" data-uid="ToSic.Sxc.Templates.ITemplateEngine.GetSources(ToSic.Lib.Coding.NoParamOrder,System.Int32)">
GetSources(NoParamOrder, int)
<a class="header-action link-secondary" title="View source" href="https://github.com/2sic/2sxc/blob/develop/Src/Sxc/ToSic.Sxc/Templates/ITemplateEngine.cs/#L18"><i class="bi bi-code-slash"></i></a>
</h3>

<div class="markdown level1 summary"><p>Get a list of underlying sources, mainly for debugging.</p>
</div>
<div class="markdown level1 conceptual"></div>

<div class="codewrapper">
<pre><code class="lang-csharp hljs">IEnumerable&lt;ILookUp&gt; GetSources(NoParamOrder protector = default, int depth = 0)</code></pre>
</div>

<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>protector</code> <a class="xref" href="ToSic.Lib.Coding.NoParamOrder.html">NoParamOrder</a></dt>
<dd></dd>
<dt><code>depth</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a></dt>
<dd></dd>
</dl>

<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.collections.generic.ienumerable-1">IEnumerable</a>&lt;<a class="xref" href="ToSic.Eav.LookUp.ILookUp.html">ILookUp</a>&gt;</dt>
<dd></dd>
</dl>











<a id="ToSic_Sxc_Templates_ITemplateEngine_Parse_" data-uid="ToSic.Sxc.Templates.ITemplateEngine.Parse*"></a>

<h3 id="ToSic_Sxc_Templates_ITemplateEngine_Parse_System_String_ToSic_Lib_Coding_NoParamOrder_System_Collections_Generic_IEnumerable_ToSic_Eav_LookUp_ILookUp__" data-uid="ToSic.Sxc.Templates.ITemplateEngine.Parse(System.String,ToSic.Lib.Coding.NoParamOrder,System.Collections.Generic.IEnumerable{ToSic.Eav.LookUp.ILookUp})">
Parse(string, NoParamOrder, IEnumerable&lt;ILookUp&gt;)
<a class="header-action link-secondary" title="View source" href="https://github.com/2sic/2sxc/blob/develop/Src/Sxc/ToSic.Sxc/Templates/ITemplateEngine.cs/#L20"><i class="bi bi-code-slash"></i></a>
</h3>

<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>

<div class="codewrapper">
<pre><code class="lang-csharp hljs">string Parse(string template, NoParamOrder protector = default, IEnumerable&lt;ILookUp&gt; sources = null)</code></pre>
</div>

<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>template</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
<dt><code>protector</code> <a class="xref" href="ToSic.Lib.Coding.NoParamOrder.html">NoParamOrder</a></dt>
<dd></dd>
<dt><code>sources</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.collections.generic.ienumerable-1">IEnumerable</a>&lt;<a class="xref" href="ToSic.Eav.LookUp.ILookUp.html">ILookUp</a>&gt;</dt>
<dd></dd>
</dl>

<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>












</article>

<div class="contribution d-print-none">
<a href="https://github.com/2sic/2sxc/blob/develop/Src/Sxc/ToSic.Sxc/Templates/ITemplateEngine.cs/#L11" class="edit-link">Edit this page</a>
</div>


</div>

<div class="affix">
<nav id="affix"></nav>
</div>
</main>

<div class="container-xxl search-results" id="search-results"></div>

<footer class="border-top text-secondary">
<div class="container-xxl">
<div class="flex-fill">

<span>
Made by <a href="https://www.2sic.com">2sic</a>
with 💖 and
<a href="https://dotnet.github.io/docfx">docfx</a>
for <a href="https://2sxc.org">2sxc</a>,
<a href="https://dnncommunity.org/">Dnn</a>
and <a href="https://www.oqtane.org/">Oqtane</a>
see also <a href="">2sxc Github</a> and <a href="https://blazor-cms.org">Blazor CMS</a>
</span>
</div>
</div>
</footer>
</body>
</html>
Loading

0 comments on commit e6c2369

Please sign in to comment.