1 line
15 KiB
JavaScript
1 line
15 KiB
JavaScript
import{_ as e,c as t,o as a,N as l}from"./chunks/framework.0799945b.js";const p=JSON.parse('{"title":"Module: features/challenges/challenge","description":"","frontmatter":{"editLink":false},"headers":[],"relativePath":"api/modules/features/challenges/challenge.md","lastUpdated":null}'),o={name:"api/modules/features/challenges/challenge.md"},c=l('<h1 id="module-features-challenges-challenge" tabindex="-1">Module: features/challenges/challenge <a class="header-anchor" href="#module-features-challenges-challenge" aria-label="Permalink to "Module: features/challenges/challenge""></a></h1><h2 id="components" tabindex="-1">Components <a class="header-anchor" href="#components" aria-label="Permalink to "Components""></a></h2><ul><li><a href="./ChallengeComponent">Challenge</a></li></ul><h2 id="interfaces" tabindex="-1">Interfaces <a class="header-anchor" href="#interfaces" aria-label="Permalink to "Interfaces""></a></h2><ul><li><a href="../../../interfaces/features/challenges/challenge.BaseChallenge">BaseChallenge</a></li><li><a href="../../../interfaces/features/challenges/challenge.ChallengeOptions">ChallengeOptions</a></li></ul><h2 id="type-aliases" tabindex="-1">Type Aliases <a class="header-anchor" href="#type-aliases" aria-label="Permalink to "Type Aliases""></a></h2><h3 id="challenge" tabindex="-1">Challenge <a class="header-anchor" href="#challenge" aria-label="Permalink to "Challenge""></a></h3><p>Ƭ <strong>Challenge</strong><<code>T</code>>: <a href="./../feature#replace"><code>Replace</code></a><<code>T</code> & <a href="../../../interfaces/features/challenges/challenge.BaseChallenge"><code>BaseChallenge</code></a>, { <code>canStart</code>: <a href="./../../util/computed#getcomputabletypewithdefault"><code>GetComputableTypeWithDefault</code></a><<code>T</code>[<code>"canStart"</code>], <code>true</code>> ; <code>classes</code>: <a href="./../../util/computed#getcomputabletype"><code>GetComputableType</code></a><<code>T</code>[<code>"classes"</code>]> ; <code>completionLimit</code>: <a href="./../../util/computed#getcomputabletypewithdefault"><code>GetComputableTypeWithDefault</code></a><<code>T</code>[<code>"completionLimit"</code>], <code>1</code>> ; <code>display</code>: <a href="./../../util/computed#getcomputabletype"><code>GetComputableType</code></a><<code>T</code>[<code>"display"</code>]> ; <code>mark</code>: <a href="./../../util/computed#getcomputabletypewithdefault"><code>GetComputableTypeWithDefault</code></a><<code>T</code>[<code>"mark"</code>], <code>Ref</code><<code>boolean</code>>> ; <code>maximize</code>: <a href="./../../util/computed#getcomputabletype"><code>GetComputableType</code></a><<code>T</code>[<code>"maximize"</code>]> ; <code>requirements</code>: <a href="./../../util/computed#getcomputabletype"><code>GetComputableType</code></a><<code>T</code>[<code>"requirements"</code>]> ; <code>style</code>: <a href="./../../util/computed#getcomputabletype"><code>GetComputableType</code></a><<code>T</code>[<code>"style"</code>]> ; <code>visibility</code>: <a href="./../../util/computed#getcomputabletypewithdefault"><code>GetComputableTypeWithDefault</code></a><<code>T</code>[<code>"visibility"</code>], <a href="./../../../enums/features/feature.Visibility#visible"><code>Visible</code></a>> }></p><p>An object that represents a feature that can be entered and exited, and have one or more completions with scaling requirements.</p><h4 id="type-parameters" tabindex="-1">Type parameters <a class="header-anchor" href="#type-parameters" aria-label="Permalink to "Type parameters""></a></h4><table><thead><tr><th style="text-align:left;">Name</th><th style="text-align:left;">Type</th></tr></thead><tbody><tr><td style="text-align:left;"><code>T</code></td><td style="text-align:left;">extends <a href="../../../interfaces/features/challenges/challenge.ChallengeOptions"><code>ChallengeOptions</code></a></td></tr></tbody></table><h4 id="defined-in" tabindex="-1">Defined in <a class="header-anchor" href="#defined-in" aria-label="Permalink to "Defined in""></a></h4><p><a href="https://github.com/profectus-engine/Profectus/blob/70cda5f/src/features/challenges/challenge.tsx#L120" target="_blank" rel="noreferrer">profectus/src/features/challenges/challenge.tsx:120</a></p><hr><h3 id="genericchallenge" tabindex="-1">GenericChallenge <a class="header-anchor" href="#genericchallenge" aria-label="Permalink to "GenericChallenge""></a></h3><p>Ƭ <strong>GenericChallenge</strong>: <a href="./../feature#replace"><code>Replace</code></a><<a href="./challenge#challenge"><code>Challenge</code></a><<a href="../../../interfaces/features/challenges/challenge.ChallengeOptions"><code>ChallengeOptions</code></a>>, { <code>canStart</code>: <a href="./../../util/computed#processedcomputable"><code>ProcessedComputable</code></a><<code>boolean</code>> ; <code>completionLimit</code>: <a href="./../../util/computed#processedcomputable"><code>ProcessedComputable</code></a><<a href="./../../util/bignum#decimalsource"><code>DecimalSource</code></a>> ; <code>mark</code>: <a href="./../../util/computed#processedcomputable"><code>ProcessedComputable</code></a><<code>boolean</code>> ; <code>visibility</code>: <a href="./../../util/computed#processedcomputable"><code>ProcessedComputable</code></a><<a href="../../../enums/features/feature.Visibility"><code>Visibility</code></a> | <code>boolean</code>> }></p><p>A type that matches any valid <a href="./challenge#challenge">Challenge</a> object.</p><h4 id="defined-in-1" tabindex="-1">Defined in <a class="header-anchor" href="#defined-in-1" aria-label="Permalink to "Defined in""></a></h4><p><a href="https://github.com/profectus-engine/Profectus/blob/70cda5f/src/features/challenges/challenge.tsx#L136" target="_blank" rel="noreferrer">profectus/src/features/challenges/challenge.tsx:136</a></p><h2 id="variables" tabindex="-1">Variables <a class="header-anchor" href="#variables" aria-label="Permalink to "Variables""></a></h2><h3 id="challengetype" tabindex="-1">ChallengeType <a class="header-anchor" href="#challengetype" aria-label="Permalink to "ChallengeType""></a></h3><p>• <code>Const</code> <strong>ChallengeType</strong>: typeof <a href="./challenge#challengetype"><code>ChallengeType</code></a></p><p>A symbol used to identify <a href="./challenge#challenge">Challenge</a> features.</p><h4 id="defined-in-2" tabindex="-1">Defined in <a class="header-anchor" href="#defined-in-2" aria-label="Permalink to "Defined in""></a></h4><p><a href="https://github.com/profectus-engine/Profectus/blob/70cda5f/src/features/challenges/challenge.tsx#L40" target="_blank" rel="noreferrer">profectus/src/features/challenges/challenge.tsx:40</a></p><h2 id="functions" tabindex="-1">Functions <a class="header-anchor" href="#functions" aria-label="Permalink to "Functions""></a></h2><h3 id="createactivechallenge" tabindex="-1">createActiveChallenge <a class="header-anchor" href="#createactivechallenge" aria-label="Permalink to "createActiveChallenge""></a></h3><p>▸ <strong>createActiveChallenge</strong>(<code>challenges</code>): <code>Ref</code><<a href="./challenge#genericchallenge"><code>GenericChallenge</code></a> | <code>null</code>></p><p>Utility for taking an array of challenges where only one may be active at a time, and giving a ref to the one currently active (or null if none are active)</p><h4 id="parameters" tabindex="-1">Parameters <a class="header-anchor" href="#parameters" aria-label="Permalink to "Parameters""></a></h4><table><thead><tr><th style="text-align:left;">Name</th><th style="text-align:left;">Type</th><th style="text-align:left;">Description</th></tr></thead><tbody><tr><td style="text-align:left;"><code>challenges</code></td><td style="text-align:left;"><a href="./challenge#genericchallenge"><code>GenericChallenge</code></a>[]</td><td style="text-align:left;">The list of challenges that are mutually exclusive</td></tr></tbody></table><h4 id="returns" tabindex="-1">Returns <a class="header-anchor" href="#returns" aria-label="Permalink to "Returns""></a></h4><p><code>Ref</code><<a href="./challenge#genericchallenge"><code>GenericChallenge</code></a> | <code>null</code>></p><h4 id="defined-in-3" tabindex="-1">Defined in <a class="header-anchor" href="#defined-in-3" aria-label="Permalink to "Defined in""></a></h4><p><a href="https://github.com/profectus-engine/Profectus/blob/70cda5f/src/features/challenges/challenge.tsx#L324" target="_blank" rel="noreferrer">profectus/src/features/challenges/challenge.tsx:324</a></p><hr><h3 id="createchallenge" tabindex="-1">createChallenge <a class="header-anchor" href="#createchallenge" aria-label="Permalink to "createChallenge""></a></h3><p>▸ <strong>createChallenge</strong><<code>T</code>>(<code>optionsFunc</code>): <a href="./challenge#challenge"><code>Challenge</code></a><<code>T</code>></p><p>Lazily creates a challenge with the given options.</p><h4 id="type-parameters-1" tabindex="-1">Type parameters <a class="header-anchor" href="#type-parameters-1" aria-label="Permalink to "Type parameters""></a></h4><table><thead><tr><th style="text-align:left;">Name</th><th style="text-align:left;">Type</th></tr></thead><tbody><tr><td style="text-align:left;"><code>T</code></td><td style="text-align:left;">extends <a href="../../../interfaces/features/challenges/challenge.ChallengeOptions"><code>ChallengeOptions</code></a></td></tr></tbody></table><h4 id="parameters-1" tabindex="-1">Parameters <a class="header-anchor" href="#parameters-1" aria-label="Permalink to "Parameters""></a></h4><table><thead><tr><th style="text-align:left;">Name</th><th style="text-align:left;">Type</th><th style="text-align:left;">Description</th></tr></thead><tbody><tr><td style="text-align:left;"><code>optionsFunc</code></td><td style="text-align:left;"><a href="./../feature#optionsfunc"><code>OptionsFunc</code></a><<code>T</code>, <a href="../../../interfaces/features/challenges/challenge.BaseChallenge"><code>BaseChallenge</code></a>, <a href="./challenge#genericchallenge"><code>GenericChallenge</code></a>></td><td style="text-align:left;">Challenge options.</td></tr></tbody></table><h4 id="returns-1" tabindex="-1">Returns <a class="header-anchor" href="#returns-1" aria-label="Permalink to "Returns""></a></h4><p><a href="./challenge#challenge"><code>Challenge</code></a><<code>T</code>></p><h4 id="defined-in-4" tabindex="-1">Defined in <a class="header-anchor" href="#defined-in-4" aria-label="Permalink to "Defined in""></a></h4><p><a href="https://github.com/profectus-engine/Profectus/blob/70cda5f/src/features/challenges/challenge.tsx#L150" target="_blank" rel="noreferrer">profectus/src/features/challenges/challenge.tsx:150</a></p><hr><h3 id="isanychallengeactive" tabindex="-1">isAnyChallengeActive <a class="header-anchor" href="#isanychallengeactive" aria-label="Permalink to "isAnyChallengeActive""></a></h3><p>▸ <strong>isAnyChallengeActive</strong>(<code>challenges</code>): <code>Ref</code><<code>boolean</code>></p><p>Utility for reporting if any challenge in a list is currently active. Intended for preventing entering a challenge if another is already active.</p><h4 id="parameters-2" tabindex="-1">Parameters <a class="header-anchor" href="#parameters-2" aria-label="Permalink to "Parameters""></a></h4><table><thead><tr><th style="text-align:left;">Name</th><th style="text-align:left;">Type</th><th style="text-align:left;">Description</th></tr></thead><tbody><tr><td style="text-align:left;"><code>challenges</code></td><td style="text-align:left;"><a href="./challenge#genericchallenge"><code>GenericChallenge</code></a>[] | <code>Ref</code><<code>null</code> | <a href="./challenge#genericchallenge"><code>GenericChallenge</code></a>></td><td style="text-align:left;">List of challenges that are mutually exclusive</td></tr></tbody></table><h4 id="returns-2" tabindex="-1">Returns <a class="header-anchor" href="#returns-2" aria-label="Permalink to "Returns""></a></h4><p><code>Ref</code><<code>boolean</code>></p><h4 id="defined-in-5" tabindex="-1">Defined in <a class="header-anchor" href="#defined-in-5" aria-label="Permalink to "Defined in""></a></h4><p><a href="https://github.com/profectus-engine/Profectus/blob/70cda5f/src/features/challenges/challenge.tsx#L334" target="_blank" rel="noreferrer">profectus/src/features/challenges/challenge.tsx:334</a></p><hr><h3 id="setupautocomplete" tabindex="-1">setupAutoComplete <a class="header-anchor" href="#setupautocomplete" aria-label="Permalink to "setupAutoComplete""></a></h3><p>▸ <strong>setupAutoComplete</strong>(<code>challenge</code>, <code>autoActive?</code>, <code>exitOnComplete?</code>): <code>WatchStopHandle</code></p><p>This will automatically complete a challenge when it's requirements are met.</p><h4 id="parameters-3" tabindex="-1">Parameters <a class="header-anchor" href="#parameters-3" aria-label="Permalink to "Parameters""></a></h4><table><thead><tr><th style="text-align:left;">Name</th><th style="text-align:left;">Type</th><th style="text-align:left;">Default value</th><th style="text-align:left;">Description</th></tr></thead><tbody><tr><td style="text-align:left;"><code>challenge</code></td><td style="text-align:left;"><a href="./challenge#genericchallenge"><code>GenericChallenge</code></a></td><td style="text-align:left;"><code>undefined</code></td><td style="text-align:left;">The challenge to auto-complete</td></tr><tr><td style="text-align:left;"><code>autoActive</code></td><td style="text-align:left;"><a href="./../../util/computed#computable"><code>Computable</code></a><<code>boolean</code>></td><td style="text-align:left;"><code>true</code></td><td style="text-align:left;">Whether or not auto-completing should currently occur</td></tr><tr><td style="text-align:left;"><code>exitOnComplete</code></td><td style="text-align:left;"><code>boolean</code></td><td style="text-align:left;"><code>true</code></td><td style="text-align:left;">Whether or not to exit the challenge after auto-completion</td></tr></tbody></table><h4 id="returns-3" tabindex="-1">Returns <a class="header-anchor" href="#returns-3" aria-label="Permalink to "Returns""></a></h4><p><code>WatchStopHandle</code></p><h4 id="defined-in-6" tabindex="-1">Defined in <a class="header-anchor" href="#defined-in-6" aria-label="Permalink to "Defined in""></a></h4><p><a href="https://github.com/profectus-engine/Profectus/blob/70cda5f/src/features/challenges/challenge.tsx#L304" target="_blank" rel="noreferrer">profectus/src/features/challenges/challenge.tsx:304</a></p>',67),n=[c];function r(d,h,i,s,u,g){return a(),t("div",null,n)}const m=e(o,[["render",r]]);export{p as __pageData,m as default};
|