mirror of
https://github.com/django-components/django-components.git
synced 2025-09-19 04:09:44 +00:00
Deployed d4d8342
to dev with MkDocs 1.6.1 and mike 2.1.3
This commit is contained in:
parent
b7fe6e779f
commit
2532eb406d
8 changed files with 294 additions and 279 deletions
BIN
dev/objects.inv
BIN
dev/objects.inv
Binary file not shown.
|
@ -997,7 +997,7 @@
|
|||
<a id=__codelineno-0-4 name=__codelineno-0-4 href=#__codelineno-0-4></a> <span class=k>class</span><span class=w> </span><span class=nc>Defaults</span><span class=p>:</span>
|
||||
<a id=__codelineno-0-5 name=__codelineno-0-5 href=#__codelineno-0-5></a> <span class=n>position</span> <span class=o>=</span> <span class=s2>"left"</span>
|
||||
<a id=__codelineno-0-6 name=__codelineno-0-6 href=#__codelineno-0-6></a> <span class=n>selected_items</span> <span class=o>=</span> <span class=n>Default</span><span class=p>(</span><span class=k>lambda</span><span class=p>:</span> <span class=p>[</span><span class=mi>1</span><span class=p>,</span> <span class=mi>2</span><span class=p>,</span> <span class=mi>3</span><span class=p>])</span>
|
||||
</code></pre></div> </div> </div> <div class="doc doc-object doc-class"> <h2 id=django_components.ComponentExtension class="doc doc-heading"> <code class="doc-symbol doc-symbol-heading doc-symbol-class"></code> <span class="doc doc-object-name doc-class-name">ComponentExtension</span> <a href=#django_components.ComponentExtension class=headerlink title="Permanent link">¤</a></h2> <div class="doc doc-contents first"> <p class="doc doc-class-bases">Bases: <code>object</code></p> <p><a href=https://github.com/django-components/django-components/tree/master/src/django_components/extension.py#L144 target=_blank>See source code</a></p> <p>Base class for all extensions.</p> <p>Read more on <a href=../../concepts/advanced/extensions>Extensions</a>.</p> <p><span class=doc-section-title>Methods:</span></p> <ul> <li class="doc-section-item field-body"> <b><code><a class="autorefs autorefs-internal" title=" on_component_class_created (django_components.ComponentExtension.on_component_class_created)" href=#django_components.ComponentExtension.on_component_class_created>on_component_class_created</a></code></b> – <div class=doc-md-description> </div> </li> <li class="doc-section-item field-body"> <b><code><a class="autorefs autorefs-internal" title=" on_component_class_deleted (django_components.ComponentExtension.on_component_class_deleted)" href=#django_components.ComponentExtension.on_component_class_deleted>on_component_class_deleted</a></code></b> – <div class=doc-md-description> </div> </li> <li class="doc-section-item field-body"> <b><code><a class="autorefs autorefs-internal" title=" on_component_data (django_components.ComponentExtension.on_component_data)" href=#django_components.ComponentExtension.on_component_data>on_component_data</a></code></b> – <div class=doc-md-description> </div> </li> <li class="doc-section-item field-body"> <b><code><a class="autorefs autorefs-internal" title=" on_component_input (django_components.ComponentExtension.on_component_input)" href=#django_components.ComponentExtension.on_component_input>on_component_input</a></code></b> – <div class=doc-md-description> </div> </li> <li class="doc-section-item field-body"> <b><code><a class="autorefs autorefs-internal" title=" on_component_registered (django_components.ComponentExtension.on_component_registered)" href=#django_components.ComponentExtension.on_component_registered>on_component_registered</a></code></b> – <div class=doc-md-description> </div> </li> <li class="doc-section-item field-body"> <b><code><a class="autorefs autorefs-internal" title=" on_component_rendered (django_components.ComponentExtension.on_component_rendered)" href=#django_components.ComponentExtension.on_component_rendered>on_component_rendered</a></code></b> – <div class=doc-md-description> </div> </li> <li class="doc-section-item field-body"> <b><code><a class="autorefs autorefs-internal" title=" on_component_unregistered (django_components.ComponentExtension.on_component_unregistered)" href=#django_components.ComponentExtension.on_component_unregistered>on_component_unregistered</a></code></b> – <div class=doc-md-description> </div> </li> <li class="doc-section-item field-body"> <b><code><a class="autorefs autorefs-internal" title=" on_registry_created (django_components.ComponentExtension.on_registry_created)" href=#django_components.ComponentExtension.on_registry_created>on_registry_created</a></code></b> – <div class=doc-md-description> </div> </li> <li class="doc-section-item field-body"> <b><code><a class="autorefs autorefs-internal" title=" on_registry_deleted (django_components.ComponentExtension.on_registry_deleted)" href=#django_components.ComponentExtension.on_registry_deleted>on_registry_deleted</a></code></b> – <div class=doc-md-description> </div> </li> </ul> <p><span class=doc-section-title>Attributes:</span></p> <ul> <li class="doc-section-item field-body"> <b><code><a class="autorefs autorefs-internal" title=" ExtensionClass
|
||||
</code></pre></div> </div> </div> <div class="doc doc-object doc-class"> <h2 id=django_components.ComponentExtension class="doc doc-heading"> <code class="doc-symbol doc-symbol-heading doc-symbol-class"></code> <span class="doc doc-object-name doc-class-name">ComponentExtension</span> <a href=#django_components.ComponentExtension class=headerlink title="Permanent link">¤</a></h2> <div class="doc doc-contents first"> <p class="doc doc-class-bases">Bases: <code>object</code></p> <p><a href=https://github.com/django-components/django-components/tree/master/src/django_components/extension.py#L147 target=_blank>See source code</a></p> <p>Base class for all extensions.</p> <p>Read more on <a href=../../concepts/advanced/extensions>Extensions</a>.</p> <p><span class=doc-section-title>Methods:</span></p> <ul> <li class="doc-section-item field-body"> <b><code><a class="autorefs autorefs-internal" title=" on_component_class_created (django_components.ComponentExtension.on_component_class_created)" href=#django_components.ComponentExtension.on_component_class_created>on_component_class_created</a></code></b> – <div class=doc-md-description> </div> </li> <li class="doc-section-item field-body"> <b><code><a class="autorefs autorefs-internal" title=" on_component_class_deleted (django_components.ComponentExtension.on_component_class_deleted)" href=#django_components.ComponentExtension.on_component_class_deleted>on_component_class_deleted</a></code></b> – <div class=doc-md-description> </div> </li> <li class="doc-section-item field-body"> <b><code><a class="autorefs autorefs-internal" title=" on_component_data (django_components.ComponentExtension.on_component_data)" href=#django_components.ComponentExtension.on_component_data>on_component_data</a></code></b> – <div class=doc-md-description> </div> </li> <li class="doc-section-item field-body"> <b><code><a class="autorefs autorefs-internal" title=" on_component_input (django_components.ComponentExtension.on_component_input)" href=#django_components.ComponentExtension.on_component_input>on_component_input</a></code></b> – <div class=doc-md-description> </div> </li> <li class="doc-section-item field-body"> <b><code><a class="autorefs autorefs-internal" title=" on_component_registered (django_components.ComponentExtension.on_component_registered)" href=#django_components.ComponentExtension.on_component_registered>on_component_registered</a></code></b> – <div class=doc-md-description> </div> </li> <li class="doc-section-item field-body"> <b><code><a class="autorefs autorefs-internal" title=" on_component_rendered (django_components.ComponentExtension.on_component_rendered)" href=#django_components.ComponentExtension.on_component_rendered>on_component_rendered</a></code></b> – <div class=doc-md-description> </div> </li> <li class="doc-section-item field-body"> <b><code><a class="autorefs autorefs-internal" title=" on_component_unregistered (django_components.ComponentExtension.on_component_unregistered)" href=#django_components.ComponentExtension.on_component_unregistered>on_component_unregistered</a></code></b> – <div class=doc-md-description> </div> </li> <li class="doc-section-item field-body"> <b><code><a class="autorefs autorefs-internal" title=" on_registry_created (django_components.ComponentExtension.on_registry_created)" href=#django_components.ComponentExtension.on_registry_created>on_registry_created</a></code></b> – <div class=doc-md-description> </div> </li> <li class="doc-section-item field-body"> <b><code><a class="autorefs autorefs-internal" title=" on_registry_deleted (django_components.ComponentExtension.on_registry_deleted)" href=#django_components.ComponentExtension.on_registry_deleted>on_registry_deleted</a></code></b> – <div class=doc-md-description> </div> </li> </ul> <p><span class=doc-section-title>Attributes:</span></p> <ul> <li class="doc-section-item field-body"> <b><code><a class="autorefs autorefs-internal" title=" ExtensionClass
|
||||
|
||||
|
||||
|
||||
|
@ -1031,7 +1031,7 @@
|
|||
|
||||
dataclass
|
||||
(django_components.util.routing.URLRoute)" href=../extension_urls/#django_components.URLRoute>URLRoute</a>]</code>) – <div class=doc-md-description> </div> </li> </ul> <div class="doc doc-children"> <div class="doc doc-object doc-attribute"> <h3 id=django_components.ComponentExtension.ExtensionClass class="doc doc-heading"> <code class="doc-symbol doc-symbol-heading doc-symbol-attribute"></code> <span class="doc doc-object-name doc-attribute-name">ExtensionClass</span> <span class="doc doc-labels"> <small class="doc doc-label doc-label-class-attribute"><code>class-attribute</code></small> <small class="doc doc-label doc-label-instance-attribute"><code>instance-attribute</code></small> </span> <a href=#django_components.ComponentExtension.ExtensionClass class=headerlink title="Permanent link">¤</a></h3> <div class="doc-signature highlight"><pre><span></span><code><a id=__codelineno-0-1 name=__codelineno-0-1 href=#__codelineno-0-1></a><span class=n>ExtensionClass</span> <span class=o>=</span> <span class=n><span title=django_components.extension.BaseExtensionClass>BaseExtensionClass</span></span>
|
||||
</code></pre></div> <div class="doc doc-contents "> <p><a href=https://github.com/django-components/django-components/tree/master/src/django_components/extension.py#L197 target=_blank>See source code</a></p> <p>Base class that the "extension class" nested within a <a href=../api#django_components.Component><code>Component</code></a> class will inherit from.</p> <p>This is where you can define new methods and attributes that will be available to the component instance.</p> <p>Background:</p> <p>The extension may add new features to the <code>Component</code> class by allowing users to define and access a nested class in the <code>Component</code> class. E.g.:</p> <div class=highlight><pre><span></span><code><a id=__codelineno-0-1 name=__codelineno-0-1 href=#__codelineno-0-1></a><span class=k>class</span><span class=w> </span><span class=nc>MyComp</span><span class=p>(</span><span class=n>Component</span><span class=p>):</span>
|
||||
</code></pre></div> <div class="doc doc-contents "> <p><a href=https://github.com/django-components/django-components/tree/master/src/django_components/extension.py#L200 target=_blank>See source code</a></p> <p>Base class that the "extension class" nested within a <a href=../api#django_components.Component><code>Component</code></a> class will inherit from.</p> <p>This is where you can define new methods and attributes that will be available to the component instance.</p> <p>Background:</p> <p>The extension may add new features to the <code>Component</code> class by allowing users to define and access a nested class in the <code>Component</code> class. E.g.:</p> <div class=highlight><pre><span></span><code><a id=__codelineno-0-1 name=__codelineno-0-1 href=#__codelineno-0-1></a><span class=k>class</span><span class=w> </span><span class=nc>MyComp</span><span class=p>(</span><span class=n>Component</span><span class=p>):</span>
|
||||
<a id=__codelineno-0-2 name=__codelineno-0-2 href=#__codelineno-0-2></a> <span class=k>class</span><span class=w> </span><span class=nc>MyExtension</span><span class=p>:</span>
|
||||
<a id=__codelineno-0-3 name=__codelineno-0-3 href=#__codelineno-0-3></a> <span class=o>...</span>
|
||||
<a id=__codelineno-0-4 name=__codelineno-0-4 href=#__codelineno-0-4></a>
|
||||
|
@ -1043,11 +1043,11 @@
|
|||
<a id=__codelineno-1-2 name=__codelineno-1-2 href=#__codelineno-1-2></a> <span class=k>class</span><span class=w> </span><span class=nc>MyExtension</span><span class=p>(</span><span class=n>ComponentExtension</span><span class=o>.</span><span class=n>ExtensionClass</span><span class=p>):</span>
|
||||
<a id=__codelineno-1-3 name=__codelineno-1-3 href=#__codelineno-1-3></a> <span class=o>...</span>
|
||||
</code></pre></div> <p>This setting decides what the extension class will inherit from.</p> </div> </div> <div class="doc doc-object doc-attribute"> <h3 id=django_components.ComponentExtension.class_name class="doc doc-heading"> <code class="doc-symbol doc-symbol-heading doc-symbol-attribute"></code> <span class="doc doc-object-name doc-attribute-name">class_name</span> <span class="doc doc-labels"> <small class="doc doc-label doc-label-instance-attribute"><code>instance-attribute</code></small> </span> <a href=#django_components.ComponentExtension.class_name class=headerlink title="Permanent link">¤</a></h3> <div class="doc-signature highlight"><pre><span></span><code><a id=__codelineno-0-1 name=__codelineno-0-1 href=#__codelineno-0-1></a><span class=n>class_name</span><span class=p>:</span> <span class=n><a class="autorefs autorefs-external" href=https://docs.python.org/3.12/library/stdtypes.html#str>str</a></span>
|
||||
</code></pre></div> <div class="doc doc-contents "> <p><a href=https://github.com/django-components/django-components/tree/master/src/django_components/extension.py#L182 target=_blank>See source code</a></p> <p>Name of the extension class.</p> <p>By default, this is the same as <code>name</code>, but with snake_case converted to PascalCase.</p> <p>So if the extension name is <code>"my_extension"</code>, then the extension class name will be <code>"MyExtension"</code>.</p> <div class=highlight><pre><span></span><code><a id=__codelineno-0-1 name=__codelineno-0-1 href=#__codelineno-0-1></a><span class=k>class</span><span class=w> </span><span class=nc>MyComp</span><span class=p>(</span><span class=n>Component</span><span class=p>):</span>
|
||||
</code></pre></div> <div class="doc doc-contents "> <p><a href=https://github.com/django-components/django-components/tree/master/src/django_components/extension.py#L185 target=_blank>See source code</a></p> <p>Name of the extension class.</p> <p>By default, this is the same as <code>name</code>, but with snake_case converted to PascalCase.</p> <p>So if the extension name is <code>"my_extension"</code>, then the extension class name will be <code>"MyExtension"</code>.</p> <div class=highlight><pre><span></span><code><a id=__codelineno-0-1 name=__codelineno-0-1 href=#__codelineno-0-1></a><span class=k>class</span><span class=w> </span><span class=nc>MyComp</span><span class=p>(</span><span class=n>Component</span><span class=p>):</span>
|
||||
<a id=__codelineno-0-2 name=__codelineno-0-2 href=#__codelineno-0-2></a> <span class=k>class</span><span class=w> </span><span class=nc>MyExtension</span><span class=p>:</span> <span class=c1># <--- This is the extension class</span>
|
||||
<a id=__codelineno-0-3 name=__codelineno-0-3 href=#__codelineno-0-3></a> <span class=o>...</span>
|
||||
</code></pre></div> </div> </div> <div class="doc doc-object doc-attribute"> <h3 id=django_components.ComponentExtension.commands class="doc doc-heading"> <code class="doc-symbol doc-symbol-heading doc-symbol-attribute"></code> <span class="doc doc-object-name doc-attribute-name">commands</span> <span class="doc doc-labels"> <small class="doc doc-label doc-label-class-attribute"><code>class-attribute</code></small> <small class="doc doc-label doc-label-instance-attribute"><code>instance-attribute</code></small> </span> <a href=#django_components.ComponentExtension.commands class=headerlink title="Permanent link">¤</a></h3> <div class="doc-signature highlight"><pre><span></span><code><a id=__codelineno-0-1 name=__codelineno-0-1 href=#__codelineno-0-1></a><span class=n>commands</span><span class=p>:</span> <span class=n><a class="autorefs autorefs-external" title=typing.List href=https://docs.python.org/3.12/library/typing.html#typing.List>List</a></span><span class=p>[</span><span class=n><a class="autorefs autorefs-external" title=typing.Type href=https://docs.python.org/3.12/library/typing.html#typing.Type>Type</a></span><span class=p>[</span><span class=n><a class="autorefs autorefs-internal" title=" ComponentCommand (django_components.util.command.ComponentCommand)" href=../extension_commands/#django_components.ComponentCommand>ComponentCommand</a></span><span class=p>]]</span> <span class=o>=</span> <span class=p>[]</span>
|
||||
</code></pre></div> <div class="doc doc-contents "> <p><a href=https://github.com/django-components/django-components/tree/master/src/django_components/extension.py#L233 target=_blank>See source code</a></p> <p>List of commands that can be run by the extension.</p> <p>These commands will be available to the user as <code>components ext run <extension> <command></code>.</p> <p>Commands are defined as subclasses of <a href=../extension_commands#django_components.ComponentCommand><code>ComponentCommand</code></a>.</p> <p><strong>Example:</strong></p> <p>This example defines an extension with a command that prints "Hello world". To run the command, the user would run <code>components ext run hello_world hello</code>.</p> <div class=highlight><pre><span></span><code><a id=__codelineno-0-1 name=__codelineno-0-1 href=#__codelineno-0-1></a><span class=kn>from</span><span class=w> </span><span class=nn>django_components</span><span class=w> </span><span class=kn>import</span> <span class=n>ComponentCommand</span><span class=p>,</span> <span class=n>ComponentExtension</span><span class=p>,</span> <span class=n>CommandArg</span><span class=p>,</span> <span class=n>CommandArgGroup</span>
|
||||
</code></pre></div> <div class="doc doc-contents "> <p><a href=https://github.com/django-components/django-components/tree/master/src/django_components/extension.py#L236 target=_blank>See source code</a></p> <p>List of commands that can be run by the extension.</p> <p>These commands will be available to the user as <code>components ext run <extension> <command></code>.</p> <p>Commands are defined as subclasses of <a href=../extension_commands#django_components.ComponentCommand><code>ComponentCommand</code></a>.</p> <p><strong>Example:</strong></p> <p>This example defines an extension with a command that prints "Hello world". To run the command, the user would run <code>components ext run hello_world hello</code>.</p> <div class=highlight><pre><span></span><code><a id=__codelineno-0-1 name=__codelineno-0-1 href=#__codelineno-0-1></a><span class=kn>from</span><span class=w> </span><span class=nn>django_components</span><span class=w> </span><span class=kn>import</span> <span class=n>ComponentCommand</span><span class=p>,</span> <span class=n>ComponentExtension</span><span class=p>,</span> <span class=n>CommandArg</span><span class=p>,</span> <span class=n>CommandArgGroup</span>
|
||||
<a id=__codelineno-0-2 name=__codelineno-0-2 href=#__codelineno-0-2></a>
|
||||
<a id=__codelineno-0-3 name=__codelineno-0-3 href=#__codelineno-0-3></a><span class=k>class</span><span class=w> </span><span class=nc>HelloWorldCommand</span><span class=p>(</span><span class=n>ComponentCommand</span><span class=p>):</span>
|
||||
<a id=__codelineno-0-4 name=__codelineno-0-4 href=#__codelineno-0-4></a> <span class=n>name</span> <span class=o>=</span> <span class=s2>"hello"</span>
|
||||
|
@ -1090,7 +1090,7 @@
|
|||
<a id=__codelineno-0-41 name=__codelineno-0-41 href=#__codelineno-0-41></a> <span class=n>HelloWorldCommand</span><span class=p>,</span>
|
||||
<a id=__codelineno-0-42 name=__codelineno-0-42 href=#__codelineno-0-42></a> <span class=p>]</span>
|
||||
</code></pre></div> </div> </div> <div class="doc doc-object doc-attribute"> <h3 id=django_components.ComponentExtension.name class="doc doc-heading"> <code class="doc-symbol doc-symbol-heading doc-symbol-attribute"></code> <span class="doc doc-object-name doc-attribute-name">name</span> <span class="doc doc-labels"> <small class="doc doc-label doc-label-instance-attribute"><code>instance-attribute</code></small> </span> <a href=#django_components.ComponentExtension.name class=headerlink title="Permanent link">¤</a></h3> <div class="doc-signature highlight"><pre><span></span><code><a id=__codelineno-0-1 name=__codelineno-0-1 href=#__codelineno-0-1></a><span class=n>name</span><span class=p>:</span> <span class=n><a class="autorefs autorefs-external" href=https://docs.python.org/3.12/library/stdtypes.html#str>str</a></span>
|
||||
</code></pre></div> <div class="doc doc-contents "> <p><a href=https://github.com/django-components/django-components/tree/master/src/django_components/extension.py#L155 target=_blank>See source code</a></p> <p>Name of the extension.</p> <p>Name must be lowercase, and must be a valid Python identifier (e.g. <code>"my_extension"</code>).</p> <p>The extension may add new features to the <a href=../api#django_components.Component><code>Component</code></a> class by allowing users to define and access a nested class in the <code>Component</code> class.</p> <p>The extension name determines the name of the nested class in the <code>Component</code> class, and the attribute under which the extension will be accessible.</p> <p>E.g. if the extension name is <code>"my_extension"</code>, then the nested class in the <code>Component</code> class will be <code>MyExtension</code>, and the extension will be accessible as <code>MyComp.my_extension</code>.</p> <div class=highlight><pre><span></span><code><a id=__codelineno-0-1 name=__codelineno-0-1 href=#__codelineno-0-1></a><span class=k>class</span><span class=w> </span><span class=nc>MyComp</span><span class=p>(</span><span class=n>Component</span><span class=p>):</span>
|
||||
</code></pre></div> <div class="doc doc-contents "> <p><a href=https://github.com/django-components/django-components/tree/master/src/django_components/extension.py#L158 target=_blank>See source code</a></p> <p>Name of the extension.</p> <p>Name must be lowercase, and must be a valid Python identifier (e.g. <code>"my_extension"</code>).</p> <p>The extension may add new features to the <a href=../api#django_components.Component><code>Component</code></a> class by allowing users to define and access a nested class in the <code>Component</code> class.</p> <p>The extension name determines the name of the nested class in the <code>Component</code> class, and the attribute under which the extension will be accessible.</p> <p>E.g. if the extension name is <code>"my_extension"</code>, then the nested class in the <code>Component</code> class will be <code>MyExtension</code>, and the extension will be accessible as <code>MyComp.my_extension</code>.</p> <div class=highlight><pre><span></span><code><a id=__codelineno-0-1 name=__codelineno-0-1 href=#__codelineno-0-1></a><span class=k>class</span><span class=w> </span><span class=nc>MyComp</span><span class=p>(</span><span class=n>Component</span><span class=p>):</span>
|
||||
<a id=__codelineno-0-2 name=__codelineno-0-2 href=#__codelineno-0-2></a> <span class=k>class</span><span class=w> </span><span class=nc>MyExtension</span><span class=p>:</span>
|
||||
<a id=__codelineno-0-3 name=__codelineno-0-3 href=#__codelineno-0-3></a> <span class=o>...</span>
|
||||
<a id=__codelineno-0-4 name=__codelineno-0-4 href=#__codelineno-0-4></a>
|
||||
|
@ -1105,61 +1105,61 @@
|
|||
dataclass
|
||||
(django_components.util.routing.URLRoute)" href=../extension_urls/#django_components.URLRoute>URLRoute</a></span><span class=p>]</span> <span class=o>=</span> <span class=p>[]</span>
|
||||
</code></pre></div> <div class="doc doc-contents "> </div> </div> <div class="doc doc-object doc-function"> <h3 id=django_components.ComponentExtension.on_component_class_created class="doc doc-heading"> <code class="doc-symbol doc-symbol-heading doc-symbol-method"></code> <span class="doc doc-object-name doc-function-name">on_component_class_created</span> <a href=#django_components.ComponentExtension.on_component_class_created class=headerlink title="Permanent link">¤</a></h3> <div class="doc-signature highlight"><pre><span></span><code><a id=__codelineno-0-1 name=__codelineno-0-1 href=#__codelineno-0-1></a><span class=nf>on_component_class_created</span><span class=p>(</span><span class=n>ctx</span><span class=p>:</span> <span class=n><a class="autorefs autorefs-internal" title=" OnComponentClassCreatedContext (django_components.extension.OnComponentClassCreatedContext)" href=../extension_hooks/#django_components.extension.OnComponentClassCreatedContext>OnComponentClassCreatedContext</a></span><span class=p>)</span> <span class=o>-></span> <span class=kc>None</span>
|
||||
</code></pre></div> <div class="doc doc-contents "> <p><a href=https://github.com/django-components/django-components/tree/master/src/django_components/extension.py#L312 target=_blank>See source code</a></p> <p>Called when a new <a href=../api#django_components.Component><code>Component</code></a> class is created.</p> <p>This hook is called after the <a href=../api#django_components.Component><code>Component</code></a> class is fully defined but before it's registered.</p> <p>Use this hook to perform any initialization or validation of the <a href=../api#django_components.Component><code>Component</code></a> class.</p> <p><strong>Example:</strong></p> <div class=highlight><pre><span></span><code><a id=__codelineno-0-1 name=__codelineno-0-1 href=#__codelineno-0-1></a><span class=kn>from</span><span class=w> </span><span class=nn>django_components</span><span class=w> </span><span class=kn>import</span> <span class=n>ComponentExtension</span><span class=p>,</span> <span class=n>OnComponentClassCreatedContext</span>
|
||||
</code></pre></div> <div class="doc doc-contents "> <p><a href=https://github.com/django-components/django-components/tree/master/src/django_components/extension.py#L315 target=_blank>See source code</a></p> <p>Called when a new <a href=../api#django_components.Component><code>Component</code></a> class is created.</p> <p>This hook is called after the <a href=../api#django_components.Component><code>Component</code></a> class is fully defined but before it's registered.</p> <p>Use this hook to perform any initialization or validation of the <a href=../api#django_components.Component><code>Component</code></a> class.</p> <p><strong>Example:</strong></p> <div class=highlight><pre><span></span><code><a id=__codelineno-0-1 name=__codelineno-0-1 href=#__codelineno-0-1></a><span class=kn>from</span><span class=w> </span><span class=nn>django_components</span><span class=w> </span><span class=kn>import</span> <span class=n>ComponentExtension</span><span class=p>,</span> <span class=n>OnComponentClassCreatedContext</span>
|
||||
<a id=__codelineno-0-2 name=__codelineno-0-2 href=#__codelineno-0-2></a>
|
||||
<a id=__codelineno-0-3 name=__codelineno-0-3 href=#__codelineno-0-3></a><span class=k>class</span><span class=w> </span><span class=nc>MyExtension</span><span class=p>(</span><span class=n>ComponentExtension</span><span class=p>):</span>
|
||||
<a id=__codelineno-0-4 name=__codelineno-0-4 href=#__codelineno-0-4></a> <span class=k>def</span><span class=w> </span><span class=nf>on_component_class_created</span><span class=p>(</span><span class=bp>self</span><span class=p>,</span> <span class=n>ctx</span><span class=p>:</span> <span class=n>OnComponentClassCreatedContext</span><span class=p>)</span> <span class=o>-></span> <span class=kc>None</span><span class=p>:</span>
|
||||
<a id=__codelineno-0-5 name=__codelineno-0-5 href=#__codelineno-0-5></a> <span class=c1># Add a new attribute to the Component class</span>
|
||||
<a id=__codelineno-0-6 name=__codelineno-0-6 href=#__codelineno-0-6></a> <span class=n>ctx</span><span class=o>.</span><span class=n>component_cls</span><span class=o>.</span><span class=n>my_attr</span> <span class=o>=</span> <span class=s2>"my_value"</span>
|
||||
</code></pre></div> </div> </div> <div class="doc doc-object doc-function"> <h3 id=django_components.ComponentExtension.on_component_class_deleted class="doc doc-heading"> <code class="doc-symbol doc-symbol-heading doc-symbol-method"></code> <span class="doc doc-object-name doc-function-name">on_component_class_deleted</span> <a href=#django_components.ComponentExtension.on_component_class_deleted class=headerlink title="Permanent link">¤</a></h3> <div class="doc-signature highlight"><pre><span></span><code><a id=__codelineno-0-1 name=__codelineno-0-1 href=#__codelineno-0-1></a><span class=nf>on_component_class_deleted</span><span class=p>(</span><span class=n>ctx</span><span class=p>:</span> <span class=n><a class="autorefs autorefs-internal" title=" OnComponentClassDeletedContext (django_components.extension.OnComponentClassDeletedContext)" href=../extension_hooks/#django_components.extension.OnComponentClassDeletedContext>OnComponentClassDeletedContext</a></span><span class=p>)</span> <span class=o>-></span> <span class=kc>None</span>
|
||||
</code></pre></div> <div class="doc doc-contents "> <p><a href=https://github.com/django-components/django-components/tree/master/src/django_components/extension.py#L335 target=_blank>See source code</a></p> <p>Called when a <a href=../api#django_components.Component><code>Component</code></a> class is being deleted.</p> <p>This hook is called before the <a href=../api#django_components.Component><code>Component</code></a> class is deleted from memory.</p> <p>Use this hook to perform any cleanup related to the <a href=../api#django_components.Component><code>Component</code></a> class.</p> <p><strong>Example:</strong></p> <div class=highlight><pre><span></span><code><a id=__codelineno-0-1 name=__codelineno-0-1 href=#__codelineno-0-1></a><span class=kn>from</span><span class=w> </span><span class=nn>django_components</span><span class=w> </span><span class=kn>import</span> <span class=n>ComponentExtension</span><span class=p>,</span> <span class=n>OnComponentClassDeletedContext</span>
|
||||
</code></pre></div> <div class="doc doc-contents "> <p><a href=https://github.com/django-components/django-components/tree/master/src/django_components/extension.py#L338 target=_blank>See source code</a></p> <p>Called when a <a href=../api#django_components.Component><code>Component</code></a> class is being deleted.</p> <p>This hook is called before the <a href=../api#django_components.Component><code>Component</code></a> class is deleted from memory.</p> <p>Use this hook to perform any cleanup related to the <a href=../api#django_components.Component><code>Component</code></a> class.</p> <p><strong>Example:</strong></p> <div class=highlight><pre><span></span><code><a id=__codelineno-0-1 name=__codelineno-0-1 href=#__codelineno-0-1></a><span class=kn>from</span><span class=w> </span><span class=nn>django_components</span><span class=w> </span><span class=kn>import</span> <span class=n>ComponentExtension</span><span class=p>,</span> <span class=n>OnComponentClassDeletedContext</span>
|
||||
<a id=__codelineno-0-2 name=__codelineno-0-2 href=#__codelineno-0-2></a>
|
||||
<a id=__codelineno-0-3 name=__codelineno-0-3 href=#__codelineno-0-3></a><span class=k>class</span><span class=w> </span><span class=nc>MyExtension</span><span class=p>(</span><span class=n>ComponentExtension</span><span class=p>):</span>
|
||||
<a id=__codelineno-0-4 name=__codelineno-0-4 href=#__codelineno-0-4></a> <span class=k>def</span><span class=w> </span><span class=nf>on_component_class_deleted</span><span class=p>(</span><span class=bp>self</span><span class=p>,</span> <span class=n>ctx</span><span class=p>:</span> <span class=n>OnComponentClassDeletedContext</span><span class=p>)</span> <span class=o>-></span> <span class=kc>None</span><span class=p>:</span>
|
||||
<a id=__codelineno-0-5 name=__codelineno-0-5 href=#__codelineno-0-5></a> <span class=c1># Remove Component class from the extension's cache on deletion</span>
|
||||
<a id=__codelineno-0-6 name=__codelineno-0-6 href=#__codelineno-0-6></a> <span class=bp>self</span><span class=o>.</span><span class=n>cache</span><span class=o>.</span><span class=n>pop</span><span class=p>(</span><span class=n>ctx</span><span class=o>.</span><span class=n>component_cls</span><span class=p>,</span> <span class=kc>None</span><span class=p>)</span>
|
||||
</code></pre></div> </div> </div> <div class="doc doc-object doc-function"> <h3 id=django_components.ComponentExtension.on_component_data class="doc doc-heading"> <code class="doc-symbol doc-symbol-heading doc-symbol-method"></code> <span class="doc doc-object-name doc-function-name">on_component_data</span> <a href=#django_components.ComponentExtension.on_component_data class=headerlink title="Permanent link">¤</a></h3> <div class="doc-signature highlight"><pre><span></span><code><a id=__codelineno-0-1 name=__codelineno-0-1 href=#__codelineno-0-1></a><span class=nf>on_component_data</span><span class=p>(</span><span class=n>ctx</span><span class=p>:</span> <span class=n><a class="autorefs autorefs-internal" title=" OnComponentDataContext (django_components.extension.OnComponentDataContext)" href=../extension_hooks/#django_components.extension.OnComponentDataContext>OnComponentDataContext</a></span><span class=p>)</span> <span class=o>-></span> <span class=kc>None</span>
|
||||
</code></pre></div> <div class="doc doc-contents "> <p><a href=https://github.com/django-components/django-components/tree/master/src/django_components/extension.py#L479 target=_blank>See source code</a></p> <p>Called when a <a href=../api#django_components.Component><code>Component</code></a> was triggered to render, after a component's context and data methods have been processed.</p> <p>This hook is called after <a href=../api#django_components.Component.get_template_data><code>Component.get_template_data()</code></a>, <a href=../api#django_components.Component.get_js_data><code>Component.get_js_data()</code></a> and <a href=../api#django_components.Component.get_css_data><code>Component.get_css_data()</code></a>.</p> <p>This hook runs after <a href=../api#django_components.ComponentExtension.on_component_input><code>on_component_input</code></a>.</p> <p>Use this hook to modify or validate the component's data before rendering.</p> <p><strong>Example:</strong></p> <div class=highlight><pre><span></span><code><a id=__codelineno-0-1 name=__codelineno-0-1 href=#__codelineno-0-1></a><span class=kn>from</span><span class=w> </span><span class=nn>django_components</span><span class=w> </span><span class=kn>import</span> <span class=n>ComponentExtension</span><span class=p>,</span> <span class=n>OnComponentDataContext</span>
|
||||
</code></pre></div> <div class="doc doc-contents "> <p><a href=https://github.com/django-components/django-components/tree/master/src/django_components/extension.py#L482 target=_blank>See source code</a></p> <p>Called when a <a href=../api#django_components.Component><code>Component</code></a> was triggered to render, after a component's context and data methods have been processed.</p> <p>This hook is called after <a href=../api#django_components.Component.get_template_data><code>Component.get_template_data()</code></a>, <a href=../api#django_components.Component.get_js_data><code>Component.get_js_data()</code></a> and <a href=../api#django_components.Component.get_css_data><code>Component.get_css_data()</code></a>.</p> <p>This hook runs after <a href=../api#django_components.ComponentExtension.on_component_input><code>on_component_input</code></a>.</p> <p>Use this hook to modify or validate the component's data before rendering.</p> <p><strong>Example:</strong></p> <div class=highlight><pre><span></span><code><a id=__codelineno-0-1 name=__codelineno-0-1 href=#__codelineno-0-1></a><span class=kn>from</span><span class=w> </span><span class=nn>django_components</span><span class=w> </span><span class=kn>import</span> <span class=n>ComponentExtension</span><span class=p>,</span> <span class=n>OnComponentDataContext</span>
|
||||
<a id=__codelineno-0-2 name=__codelineno-0-2 href=#__codelineno-0-2></a>
|
||||
<a id=__codelineno-0-3 name=__codelineno-0-3 href=#__codelineno-0-3></a><span class=k>class</span><span class=w> </span><span class=nc>MyExtension</span><span class=p>(</span><span class=n>ComponentExtension</span><span class=p>):</span>
|
||||
<a id=__codelineno-0-4 name=__codelineno-0-4 href=#__codelineno-0-4></a> <span class=k>def</span><span class=w> </span><span class=nf>on_component_data</span><span class=p>(</span><span class=bp>self</span><span class=p>,</span> <span class=n>ctx</span><span class=p>:</span> <span class=n>OnComponentDataContext</span><span class=p>)</span> <span class=o>-></span> <span class=kc>None</span><span class=p>:</span>
|
||||
<a id=__codelineno-0-5 name=__codelineno-0-5 href=#__codelineno-0-5></a> <span class=c1># Add extra template variable to all components when they are rendered</span>
|
||||
<a id=__codelineno-0-6 name=__codelineno-0-6 href=#__codelineno-0-6></a> <span class=n>ctx</span><span class=o>.</span><span class=n>template_data</span><span class=p>[</span><span class=s2>"my_template_var"</span><span class=p>]</span> <span class=o>=</span> <span class=s2>"my_value"</span>
|
||||
</code></pre></div> </div> </div> <div class="doc doc-object doc-function"> <h3 id=django_components.ComponentExtension.on_component_input class="doc doc-heading"> <code class="doc-symbol doc-symbol-heading doc-symbol-method"></code> <span class="doc doc-object-name doc-function-name">on_component_input</span> <a href=#django_components.ComponentExtension.on_component_input class=headerlink title="Permanent link">¤</a></h3> <div class="doc-signature highlight"><pre><span></span><code><a id=__codelineno-0-1 name=__codelineno-0-1 href=#__codelineno-0-1></a><span class=nf>on_component_input</span><span class=p>(</span><span class=n>ctx</span><span class=p>:</span> <span class=n><a class="autorefs autorefs-internal" title=" OnComponentInputContext (django_components.extension.OnComponentInputContext)" href=../extension_hooks/#django_components.extension.OnComponentInputContext>OnComponentInputContext</a></span><span class=p>)</span> <span class=o>-></span> <span class=n><a class="autorefs autorefs-external" title=typing.Optional href=https://docs.python.org/3.12/library/typing.html#typing.Optional>Optional</a></span><span class=p>[</span><span class=n><a class="autorefs autorefs-external" href=https://docs.python.org/3.12/library/stdtypes.html#str>str</a></span><span class=p>]</span>
|
||||
</code></pre></div> <div class="doc doc-contents "> <p><a href=https://github.com/django-components/django-components/tree/master/src/django_components/extension.py#L445 target=_blank>See source code</a></p> <p>Called when a <a href=../api#django_components.Component><code>Component</code></a> was triggered to render, but before a component's context and data methods are invoked.</p> <p>Use this hook to modify or validate component inputs before they're processed.</p> <p>This is the first hook that is called when rendering a component. As such this hook is called before <a href=../api#django_components.Component.get_template_data><code>Component.get_template_data()</code></a>, <a href=../api#django_components.Component.get_js_data><code>Component.get_js_data()</code></a>, and <a href=../api#django_components.Component.get_css_data><code>Component.get_css_data()</code></a> methods, and the <a href=../extension_hooks#django_components.extension.ComponentExtension.on_component_data><code>on_component_data</code></a> hook.</p> <p>This hook also allows to skip the rendering of a component altogether. If the hook returns a non-null value, this value will be used instead of rendering the component.</p> <p>You can use this to implement a caching mechanism for components, or define components that will be rendered conditionally.</p> <p><strong>Example:</strong></p> <div class=highlight><pre><span></span><code><a id=__codelineno-0-1 name=__codelineno-0-1 href=#__codelineno-0-1></a><span class=kn>from</span><span class=w> </span><span class=nn>django_components</span><span class=w> </span><span class=kn>import</span> <span class=n>ComponentExtension</span><span class=p>,</span> <span class=n>OnComponentInputContext</span>
|
||||
</code></pre></div> <div class="doc doc-contents "> <p><a href=https://github.com/django-components/django-components/tree/master/src/django_components/extension.py#L448 target=_blank>See source code</a></p> <p>Called when a <a href=../api#django_components.Component><code>Component</code></a> was triggered to render, but before a component's context and data methods are invoked.</p> <p>Use this hook to modify or validate component inputs before they're processed.</p> <p>This is the first hook that is called when rendering a component. As such this hook is called before <a href=../api#django_components.Component.get_template_data><code>Component.get_template_data()</code></a>, <a href=../api#django_components.Component.get_js_data><code>Component.get_js_data()</code></a>, and <a href=../api#django_components.Component.get_css_data><code>Component.get_css_data()</code></a> methods, and the <a href=../extension_hooks#django_components.extension.ComponentExtension.on_component_data><code>on_component_data</code></a> hook.</p> <p>This hook also allows to skip the rendering of a component altogether. If the hook returns a non-null value, this value will be used instead of rendering the component.</p> <p>You can use this to implement a caching mechanism for components, or define components that will be rendered conditionally.</p> <p><strong>Example:</strong></p> <div class=highlight><pre><span></span><code><a id=__codelineno-0-1 name=__codelineno-0-1 href=#__codelineno-0-1></a><span class=kn>from</span><span class=w> </span><span class=nn>django_components</span><span class=w> </span><span class=kn>import</span> <span class=n>ComponentExtension</span><span class=p>,</span> <span class=n>OnComponentInputContext</span>
|
||||
<a id=__codelineno-0-2 name=__codelineno-0-2 href=#__codelineno-0-2></a>
|
||||
<a id=__codelineno-0-3 name=__codelineno-0-3 href=#__codelineno-0-3></a><span class=k>class</span><span class=w> </span><span class=nc>MyExtension</span><span class=p>(</span><span class=n>ComponentExtension</span><span class=p>):</span>
|
||||
<a id=__codelineno-0-4 name=__codelineno-0-4 href=#__codelineno-0-4></a> <span class=k>def</span><span class=w> </span><span class=nf>on_component_input</span><span class=p>(</span><span class=bp>self</span><span class=p>,</span> <span class=n>ctx</span><span class=p>:</span> <span class=n>OnComponentInputContext</span><span class=p>)</span> <span class=o>-></span> <span class=kc>None</span><span class=p>:</span>
|
||||
<a id=__codelineno-0-5 name=__codelineno-0-5 href=#__codelineno-0-5></a> <span class=c1># Add extra kwarg to all components when they are rendered</span>
|
||||
<a id=__codelineno-0-6 name=__codelineno-0-6 href=#__codelineno-0-6></a> <span class=n>ctx</span><span class=o>.</span><span class=n>kwargs</span><span class=p>[</span><span class=s2>"my_input"</span><span class=p>]</span> <span class=o>=</span> <span class=s2>"my_value"</span>
|
||||
</code></pre></div> </div> </div> <div class="doc doc-object doc-function"> <h3 id=django_components.ComponentExtension.on_component_registered class="doc doc-heading"> <code class="doc-symbol doc-symbol-heading doc-symbol-method"></code> <span class="doc doc-object-name doc-function-name">on_component_registered</span> <a href=#django_components.ComponentExtension.on_component_registered class=headerlink title="Permanent link">¤</a></h3> <div class="doc-signature highlight"><pre><span></span><code><a id=__codelineno-0-1 name=__codelineno-0-1 href=#__codelineno-0-1></a><span class=nf>on_component_registered</span><span class=p>(</span><span class=n>ctx</span><span class=p>:</span> <span class=n><a class="autorefs autorefs-internal" title=" OnComponentRegisteredContext (django_components.extension.OnComponentRegisteredContext)" href=../extension_hooks/#django_components.extension.OnComponentRegisteredContext>OnComponentRegisteredContext</a></span><span class=p>)</span> <span class=o>-></span> <span class=kc>None</span>
|
||||
</code></pre></div> <div class="doc doc-contents "> <p><a href=https://github.com/django-components/django-components/tree/master/src/django_components/extension.py#L401 target=_blank>See source code</a></p> <p>Called when a <a href=../api#django_components.Component><code>Component</code></a> class is registered with a <a href=../api#django_components.ComponentRegistry><code>ComponentRegistry</code></a>.</p> <p>This hook is called after a <a href=../api#django_components.Component><code>Component</code></a> class is successfully registered.</p> <p><strong>Example:</strong></p> <div class=highlight><pre><span></span><code><a id=__codelineno-0-1 name=__codelineno-0-1 href=#__codelineno-0-1></a><span class=kn>from</span><span class=w> </span><span class=nn>django_components</span><span class=w> </span><span class=kn>import</span> <span class=n>ComponentExtension</span><span class=p>,</span> <span class=n>OnComponentRegisteredContext</span>
|
||||
</code></pre></div> <div class="doc doc-contents "> <p><a href=https://github.com/django-components/django-components/tree/master/src/django_components/extension.py#L404 target=_blank>See source code</a></p> <p>Called when a <a href=../api#django_components.Component><code>Component</code></a> class is registered with a <a href=../api#django_components.ComponentRegistry><code>ComponentRegistry</code></a>.</p> <p>This hook is called after a <a href=../api#django_components.Component><code>Component</code></a> class is successfully registered.</p> <p><strong>Example:</strong></p> <div class=highlight><pre><span></span><code><a id=__codelineno-0-1 name=__codelineno-0-1 href=#__codelineno-0-1></a><span class=kn>from</span><span class=w> </span><span class=nn>django_components</span><span class=w> </span><span class=kn>import</span> <span class=n>ComponentExtension</span><span class=p>,</span> <span class=n>OnComponentRegisteredContext</span>
|
||||
<a id=__codelineno-0-2 name=__codelineno-0-2 href=#__codelineno-0-2></a>
|
||||
<a id=__codelineno-0-3 name=__codelineno-0-3 href=#__codelineno-0-3></a><span class=k>class</span><span class=w> </span><span class=nc>MyExtension</span><span class=p>(</span><span class=n>ComponentExtension</span><span class=p>):</span>
|
||||
<a id=__codelineno-0-4 name=__codelineno-0-4 href=#__codelineno-0-4></a> <span class=k>def</span><span class=w> </span><span class=nf>on_component_registered</span><span class=p>(</span><span class=bp>self</span><span class=p>,</span> <span class=n>ctx</span><span class=p>:</span> <span class=n>OnComponentRegisteredContext</span><span class=p>)</span> <span class=o>-></span> <span class=kc>None</span><span class=p>:</span>
|
||||
<a id=__codelineno-0-5 name=__codelineno-0-5 href=#__codelineno-0-5></a> <span class=nb>print</span><span class=p>(</span><span class=sa>f</span><span class=s2>"Component </span><span class=si>{</span><span class=n>ctx</span><span class=o>.</span><span class=n>component_cls</span><span class=si>}</span><span class=s2> registered to </span><span class=si>{</span><span class=n>ctx</span><span class=o>.</span><span class=n>registry</span><span class=si>}</span><span class=s2> as '</span><span class=si>{</span><span class=n>ctx</span><span class=o>.</span><span class=n>name</span><span class=si>}</span><span class=s2>'"</span><span class=p>)</span>
|
||||
</code></pre></div> </div> </div> <div class="doc doc-object doc-function"> <h3 id=django_components.ComponentExtension.on_component_rendered class="doc doc-heading"> <code class="doc-symbol doc-symbol-heading doc-symbol-method"></code> <span class="doc doc-object-name doc-function-name">on_component_rendered</span> <a href=#django_components.ComponentExtension.on_component_rendered class=headerlink title="Permanent link">¤</a></h3> <div class="doc-signature highlight"><pre><span></span><code><a id=__codelineno-0-1 name=__codelineno-0-1 href=#__codelineno-0-1></a><span class=nf>on_component_rendered</span><span class=p>(</span><span class=n>ctx</span><span class=p>:</span> <span class=n><span title=django_components.extension.OnComponentRenderedContext>OnComponentRenderedContext</span></span><span class=p>)</span> <span class=o>-></span> <span class=n><a class="autorefs autorefs-external" title=typing.Optional href=https://docs.python.org/3.12/library/typing.html#typing.Optional>Optional</a></span><span class=p>[</span><span class=n><a class="autorefs autorefs-external" href=https://docs.python.org/3.12/library/stdtypes.html#str>str</a></span><span class=p>]</span>
|
||||
</code></pre></div> <div class="doc doc-contents "> <p><a href=https://github.com/django-components/django-components/tree/master/src/django_components/extension.py#L506 target=_blank>See source code</a></p> <p>Called when a <a href=../api#django_components.Component><code>Component</code></a> was rendered, including all its child components.</p> <p>Use this hook to access or post-process the component's rendered output.</p> <p>To modify the output, return a new string from this hook.</p> <p><strong>Example:</strong></p> <div class=highlight><pre><span></span><code><a id=__codelineno-0-1 name=__codelineno-0-1 href=#__codelineno-0-1></a><span class=kn>from</span><span class=w> </span><span class=nn>django_components</span><span class=w> </span><span class=kn>import</span> <span class=n>ComponentExtension</span><span class=p>,</span> <span class=n>OnComponentRenderedContext</span>
|
||||
</code></pre></div> <div class="doc doc-contents "> <p><a href=https://github.com/django-components/django-components/tree/master/src/django_components/extension.py#L509 target=_blank>See source code</a></p> <p>Called when a <a href=../api#django_components.Component><code>Component</code></a> was rendered, including all its child components.</p> <p>Use this hook to access or post-process the component's rendered output.</p> <p>To modify the output, return a new string from this hook.</p> <p><strong>Example:</strong></p> <div class=highlight><pre><span></span><code><a id=__codelineno-0-1 name=__codelineno-0-1 href=#__codelineno-0-1></a><span class=kn>from</span><span class=w> </span><span class=nn>django_components</span><span class=w> </span><span class=kn>import</span> <span class=n>ComponentExtension</span><span class=p>,</span> <span class=n>OnComponentRenderedContext</span>
|
||||
<a id=__codelineno-0-2 name=__codelineno-0-2 href=#__codelineno-0-2></a>
|
||||
<a id=__codelineno-0-3 name=__codelineno-0-3 href=#__codelineno-0-3></a><span class=k>class</span><span class=w> </span><span class=nc>MyExtension</span><span class=p>(</span><span class=n>ComponentExtension</span><span class=p>):</span>
|
||||
<a id=__codelineno-0-4 name=__codelineno-0-4 href=#__codelineno-0-4></a> <span class=k>def</span><span class=w> </span><span class=nf>on_component_rendered</span><span class=p>(</span><span class=bp>self</span><span class=p>,</span> <span class=n>ctx</span><span class=p>:</span> <span class=n>OnComponentRenderedContext</span><span class=p>)</span> <span class=o>-></span> <span class=n>Optional</span><span class=p>[</span><span class=nb>str</span><span class=p>]:</span>
|
||||
<a id=__codelineno-0-5 name=__codelineno-0-5 href=#__codelineno-0-5></a> <span class=c1># Append a comment to the component's rendered output</span>
|
||||
<a id=__codelineno-0-6 name=__codelineno-0-6 href=#__codelineno-0-6></a> <span class=k>return</span> <span class=n>ctx</span><span class=o>.</span><span class=n>result</span> <span class=o>+</span> <span class=s2>"<!-- MyExtension comment -->"</span>
|
||||
</code></pre></div> </div> </div> <div class="doc doc-object doc-function"> <h3 id=django_components.ComponentExtension.on_component_unregistered class="doc doc-heading"> <code class="doc-symbol doc-symbol-heading doc-symbol-method"></code> <span class="doc doc-object-name doc-function-name">on_component_unregistered</span> <a href=#django_components.ComponentExtension.on_component_unregistered class=headerlink title="Permanent link">¤</a></h3> <div class="doc-signature highlight"><pre><span></span><code><a id=__codelineno-0-1 name=__codelineno-0-1 href=#__codelineno-0-1></a><span class=nf>on_component_unregistered</span><span class=p>(</span><span class=n>ctx</span><span class=p>:</span> <span class=n><a class="autorefs autorefs-internal" title=" OnComponentUnregisteredContext (django_components.extension.OnComponentUnregisteredContext)" href=../extension_hooks/#django_components.extension.OnComponentUnregisteredContext>OnComponentUnregisteredContext</a></span><span class=p>)</span> <span class=o>-></span> <span class=kc>None</span>
|
||||
</code></pre></div> <div class="doc doc-contents "> <p><a href=https://github.com/django-components/django-components/tree/master/src/django_components/extension.py#L421 target=_blank>See source code</a></p> <p>Called when a <a href=../api#django_components.Component><code>Component</code></a> class is unregistered from a <a href=../api#django_components.ComponentRegistry><code>ComponentRegistry</code></a>.</p> <p>This hook is called after a <a href=../api#django_components.Component><code>Component</code></a> class is removed from the registry.</p> <p><strong>Example:</strong></p> <div class=highlight><pre><span></span><code><a id=__codelineno-0-1 name=__codelineno-0-1 href=#__codelineno-0-1></a><span class=kn>from</span><span class=w> </span><span class=nn>django_components</span><span class=w> </span><span class=kn>import</span> <span class=n>ComponentExtension</span><span class=p>,</span> <span class=n>OnComponentUnregisteredContext</span>
|
||||
</code></pre></div> <div class="doc doc-contents "> <p><a href=https://github.com/django-components/django-components/tree/master/src/django_components/extension.py#L424 target=_blank>See source code</a></p> <p>Called when a <a href=../api#django_components.Component><code>Component</code></a> class is unregistered from a <a href=../api#django_components.ComponentRegistry><code>ComponentRegistry</code></a>.</p> <p>This hook is called after a <a href=../api#django_components.Component><code>Component</code></a> class is removed from the registry.</p> <p><strong>Example:</strong></p> <div class=highlight><pre><span></span><code><a id=__codelineno-0-1 name=__codelineno-0-1 href=#__codelineno-0-1></a><span class=kn>from</span><span class=w> </span><span class=nn>django_components</span><span class=w> </span><span class=kn>import</span> <span class=n>ComponentExtension</span><span class=p>,</span> <span class=n>OnComponentUnregisteredContext</span>
|
||||
<a id=__codelineno-0-2 name=__codelineno-0-2 href=#__codelineno-0-2></a>
|
||||
<a id=__codelineno-0-3 name=__codelineno-0-3 href=#__codelineno-0-3></a><span class=k>class</span><span class=w> </span><span class=nc>MyExtension</span><span class=p>(</span><span class=n>ComponentExtension</span><span class=p>):</span>
|
||||
<a id=__codelineno-0-4 name=__codelineno-0-4 href=#__codelineno-0-4></a> <span class=k>def</span><span class=w> </span><span class=nf>on_component_unregistered</span><span class=p>(</span><span class=bp>self</span><span class=p>,</span> <span class=n>ctx</span><span class=p>:</span> <span class=n>OnComponentUnregisteredContext</span><span class=p>)</span> <span class=o>-></span> <span class=kc>None</span><span class=p>:</span>
|
||||
<a id=__codelineno-0-5 name=__codelineno-0-5 href=#__codelineno-0-5></a> <span class=nb>print</span><span class=p>(</span><span class=sa>f</span><span class=s2>"Component </span><span class=si>{</span><span class=n>ctx</span><span class=o>.</span><span class=n>component_cls</span><span class=si>}</span><span class=s2> unregistered from </span><span class=si>{</span><span class=n>ctx</span><span class=o>.</span><span class=n>registry</span><span class=si>}</span><span class=s2> as '</span><span class=si>{</span><span class=n>ctx</span><span class=o>.</span><span class=n>name</span><span class=si>}</span><span class=s2>'"</span><span class=p>)</span>
|
||||
</code></pre></div> </div> </div> <div class="doc doc-object doc-function"> <h3 id=django_components.ComponentExtension.on_registry_created class="doc doc-heading"> <code class="doc-symbol doc-symbol-heading doc-symbol-method"></code> <span class="doc doc-object-name doc-function-name">on_registry_created</span> <a href=#django_components.ComponentExtension.on_registry_created class=headerlink title="Permanent link">¤</a></h3> <div class="doc-signature highlight"><pre><span></span><code><a id=__codelineno-0-1 name=__codelineno-0-1 href=#__codelineno-0-1></a><span class=nf>on_registry_created</span><span class=p>(</span><span class=n>ctx</span><span class=p>:</span> <span class=n><a class="autorefs autorefs-internal" title=" OnRegistryCreatedContext (django_components.extension.OnRegistryCreatedContext)" href=../extension_hooks/#django_components.extension.OnRegistryCreatedContext>OnRegistryCreatedContext</a></span><span class=p>)</span> <span class=o>-></span> <span class=kc>None</span>
|
||||
</code></pre></div> <div class="doc doc-contents "> <p><a href=https://github.com/django-components/django-components/tree/master/src/django_components/extension.py#L357 target=_blank>See source code</a></p> <p>Called when a new <a href=../api#django_components.ComponentRegistry><code>ComponentRegistry</code></a> is created.</p> <p>This hook is called after a new <a href=../api#django_components.ComponentRegistry><code>ComponentRegistry</code></a> instance is initialized.</p> <p>Use this hook to perform any initialization needed for the registry.</p> <p><strong>Example:</strong></p> <div class=highlight><pre><span></span><code><a id=__codelineno-0-1 name=__codelineno-0-1 href=#__codelineno-0-1></a><span class=kn>from</span><span class=w> </span><span class=nn>django_components</span><span class=w> </span><span class=kn>import</span> <span class=n>ComponentExtension</span><span class=p>,</span> <span class=n>OnRegistryCreatedContext</span>
|
||||
</code></pre></div> <div class="doc doc-contents "> <p><a href=https://github.com/django-components/django-components/tree/master/src/django_components/extension.py#L360 target=_blank>See source code</a></p> <p>Called when a new <a href=../api#django_components.ComponentRegistry><code>ComponentRegistry</code></a> is created.</p> <p>This hook is called after a new <a href=../api#django_components.ComponentRegistry><code>ComponentRegistry</code></a> instance is initialized.</p> <p>Use this hook to perform any initialization needed for the registry.</p> <p><strong>Example:</strong></p> <div class=highlight><pre><span></span><code><a id=__codelineno-0-1 name=__codelineno-0-1 href=#__codelineno-0-1></a><span class=kn>from</span><span class=w> </span><span class=nn>django_components</span><span class=w> </span><span class=kn>import</span> <span class=n>ComponentExtension</span><span class=p>,</span> <span class=n>OnRegistryCreatedContext</span>
|
||||
<a id=__codelineno-0-2 name=__codelineno-0-2 href=#__codelineno-0-2></a>
|
||||
<a id=__codelineno-0-3 name=__codelineno-0-3 href=#__codelineno-0-3></a><span class=k>class</span><span class=w> </span><span class=nc>MyExtension</span><span class=p>(</span><span class=n>ComponentExtension</span><span class=p>):</span>
|
||||
<a id=__codelineno-0-4 name=__codelineno-0-4 href=#__codelineno-0-4></a> <span class=k>def</span><span class=w> </span><span class=nf>on_registry_created</span><span class=p>(</span><span class=bp>self</span><span class=p>,</span> <span class=n>ctx</span><span class=p>:</span> <span class=n>OnRegistryCreatedContext</span><span class=p>)</span> <span class=o>-></span> <span class=kc>None</span><span class=p>:</span>
|
||||
<a id=__codelineno-0-5 name=__codelineno-0-5 href=#__codelineno-0-5></a> <span class=c1># Add a new attribute to the registry</span>
|
||||
<a id=__codelineno-0-6 name=__codelineno-0-6 href=#__codelineno-0-6></a> <span class=n>ctx</span><span class=o>.</span><span class=n>registry</span><span class=o>.</span><span class=n>my_attr</span> <span class=o>=</span> <span class=s2>"my_value"</span>
|
||||
</code></pre></div> </div> </div> <div class="doc doc-object doc-function"> <h3 id=django_components.ComponentExtension.on_registry_deleted class="doc doc-heading"> <code class="doc-symbol doc-symbol-heading doc-symbol-method"></code> <span class="doc doc-object-name doc-function-name">on_registry_deleted</span> <a href=#django_components.ComponentExtension.on_registry_deleted class=headerlink title="Permanent link">¤</a></h3> <div class="doc-signature highlight"><pre><span></span><code><a id=__codelineno-0-1 name=__codelineno-0-1 href=#__codelineno-0-1></a><span class=nf>on_registry_deleted</span><span class=p>(</span><span class=n>ctx</span><span class=p>:</span> <span class=n><a class="autorefs autorefs-internal" title=" OnRegistryDeletedContext (django_components.extension.OnRegistryDeletedContext)" href=../extension_hooks/#django_components.extension.OnRegistryDeletedContext>OnRegistryDeletedContext</a></span><span class=p>)</span> <span class=o>-></span> <span class=kc>None</span>
|
||||
</code></pre></div> <div class="doc doc-contents "> <p><a href=https://github.com/django-components/django-components/tree/master/src/django_components/extension.py#L379 target=_blank>See source code</a></p> <p>Called when a <a href=../api#django_components.ComponentRegistry><code>ComponentRegistry</code></a> is being deleted.</p> <p>This hook is called before a <a href=../api#django_components.ComponentRegistry><code>ComponentRegistry</code></a> instance is deleted.</p> <p>Use this hook to perform any cleanup related to the registry.</p> <p><strong>Example:</strong></p> <div class=highlight><pre><span></span><code><a id=__codelineno-0-1 name=__codelineno-0-1 href=#__codelineno-0-1></a><span class=kn>from</span><span class=w> </span><span class=nn>django_components</span><span class=w> </span><span class=kn>import</span> <span class=n>ComponentExtension</span><span class=p>,</span> <span class=n>OnRegistryDeletedContext</span>
|
||||
</code></pre></div> <div class="doc doc-contents "> <p><a href=https://github.com/django-components/django-components/tree/master/src/django_components/extension.py#L382 target=_blank>See source code</a></p> <p>Called when a <a href=../api#django_components.ComponentRegistry><code>ComponentRegistry</code></a> is being deleted.</p> <p>This hook is called before a <a href=../api#django_components.ComponentRegistry><code>ComponentRegistry</code></a> instance is deleted.</p> <p>Use this hook to perform any cleanup related to the registry.</p> <p><strong>Example:</strong></p> <div class=highlight><pre><span></span><code><a id=__codelineno-0-1 name=__codelineno-0-1 href=#__codelineno-0-1></a><span class=kn>from</span><span class=w> </span><span class=nn>django_components</span><span class=w> </span><span class=kn>import</span> <span class=n>ComponentExtension</span><span class=p>,</span> <span class=n>OnRegistryDeletedContext</span>
|
||||
<a id=__codelineno-0-2 name=__codelineno-0-2 href=#__codelineno-0-2></a>
|
||||
<a id=__codelineno-0-3 name=__codelineno-0-3 href=#__codelineno-0-3></a><span class=k>class</span><span class=w> </span><span class=nc>MyExtension</span><span class=p>(</span><span class=n>ComponentExtension</span><span class=p>):</span>
|
||||
<a id=__codelineno-0-4 name=__codelineno-0-4 href=#__codelineno-0-4></a> <span class=k>def</span><span class=w> </span><span class=nf>on_registry_deleted</span><span class=p>(</span><span class=bp>self</span><span class=p>,</span> <span class=n>ctx</span><span class=p>:</span> <span class=n>OnRegistryDeletedContext</span><span class=p>)</span> <span class=o>-></span> <span class=kc>None</span><span class=p>:</span>
|
||||
|
|
File diff suppressed because one or more lines are too long
|
@ -3,7 +3,7 @@
|
|||
</code></pre></div> <p><a href=https://github.com/django-components/django-components/tree/master/src/django_components/templatetags/component_tags.py#L1069 target=_blank>See source code</a></p> <p>Marks location where CSS link tags should be rendered after the whole HTML has been generated.</p> <p>Generally, this should be inserted into the <code><head></code> tag of the HTML.</p> <p>If the generated HTML does NOT contain any <code>{% component_css_dependencies %}</code> tags, CSS links are by default inserted into the <code><head></code> tag of the HTML. (See <a href=../../concepts/advanced/rendering_js_css/#js-and-css-output-locations>JS and CSS output locations</a>)</p> <p>Note that there should be only one <code>{% component_css_dependencies %}</code> for the whole HTML document. If you insert this tag multiple times, ALL CSS links will be duplicately inserted into ALL these places.</p> <h2 id=component_js_dependencies>component_js_dependencies<a class=headerlink href=#component_js_dependencies title="Permanent link">¤</a></h2> <div class=highlight><pre><span></span><code><a id=__codelineno-2-1 name=__codelineno-2-1 href=#__codelineno-2-1></a><span class=cp>{%</span> <span class=k>component_js_dependencies</span> <span class=cp>%}</span>
|
||||
</code></pre></div> <p><a href=https://github.com/django-components/django-components/tree/master/src/django_components/templatetags/component_tags.py#L1091 target=_blank>See source code</a></p> <p>Marks location where JS link tags should be rendered after the whole HTML has been generated.</p> <p>Generally, this should be inserted at the end of the <code><body></code> tag of the HTML.</p> <p>If the generated HTML does NOT contain any <code>{% component_js_dependencies %}</code> tags, JS scripts are by default inserted at the end of the <code><body></code> tag of the HTML. (See <a href=../../concepts/advanced/rendering_js_css/#js-and-css-output-locations>JS and CSS output locations</a>)</p> <p>Note that there should be only one <code>{% component_js_dependencies %}</code> for the whole HTML document. If you insert this tag multiple times, ALL JS scripts will be duplicately inserted into ALL these places.</p> <h2 id=component>component<a class=headerlink href=#component title="Permanent link">¤</a></h2> <div class=highlight><pre><span></span><code><a id=__codelineno-3-1 name=__codelineno-3-1 href=#__codelineno-3-1></a><span class=cp>{%</span> <span class=k>component</span> <span class=o>*</span><span class=nv>args</span><span class=o>:</span> <span class=nv>Any</span><span class=o>,</span> <span class=o>**</span><span class=nv>kwargs</span><span class=o>:</span> <span class=nv>Any</span> <span class=o>[</span><span class=nv>only</span><span class=o>]</span> <span class=cp>%}</span>
|
||||
<a id=__codelineno-3-2 name=__codelineno-3-2 href=#__codelineno-3-2></a><span class=cp>{%</span> <span class=k>endcomponent</span> <span class=cp>%}</span>
|
||||
</code></pre></div> <p><a href=https://github.com/django-components/django-components/tree/master/src/django_components/templatetags/component_tags.py#L2789 target=_blank>See source code</a></p> <p>Renders one of the components that was previously registered with <a href=../api/#django_components.register><code>@register()</code></a> decorator.</p> <p>The <code>{% component %}</code> tag takes:</p> <ul> <li>Component's registered name as the first positional argument,</li> <li>Followed by any number of positional and keyword arguments.</li> </ul> <div class=highlight><pre><span></span><code><a id=__codelineno-4-1 name=__codelineno-4-1 href=#__codelineno-4-1></a><span class=cp>{%</span> <span class=k>load</span> <span class=nv>component_tags</span> <span class=cp>%}</span>
|
||||
</code></pre></div> <p><a href=https://github.com/django-components/django-components/tree/master/src/django_components/templatetags/component_tags.py#L2791 target=_blank>See source code</a></p> <p>Renders one of the components that was previously registered with <a href=../api/#django_components.register><code>@register()</code></a> decorator.</p> <p>The <code>{% component %}</code> tag takes:</p> <ul> <li>Component's registered name as the first positional argument,</li> <li>Followed by any number of positional and keyword arguments.</li> </ul> <div class=highlight><pre><span></span><code><a id=__codelineno-4-1 name=__codelineno-4-1 href=#__codelineno-4-1></a><span class=cp>{%</span> <span class=k>load</span> <span class=nv>component_tags</span> <span class=cp>%}</span>
|
||||
<a id=__codelineno-4-2 name=__codelineno-4-2 href=#__codelineno-4-2></a><span class=x><div></span>
|
||||
<a id=__codelineno-4-3 name=__codelineno-4-3 href=#__codelineno-4-3></a><span class=x> </span><span class=cp>{%</span> <span class=k>component</span> <span class=s2>"button"</span> <span class=nv>name</span><span class=o>=</span><span class=s2>"John"</span> <span class=nv>job</span><span class=o>=</span><span class=s2>"Developer"</span> <span class=o>/</span> <span class=cp>%}</span>
|
||||
<a id=__codelineno-4-4 name=__codelineno-4-4 href=#__codelineno-4-4></a><span class=x></div></span>
|
||||
|
|
File diff suppressed because one or more lines are too long
|
@ -873,6 +873,9 @@ def _extract_property_docstrings(cls: Type) -> Dict[str, str]:
|
|||
if line.endswith("):\n"):
|
||||
ignore = False
|
||||
continue
|
||||
# Ignore comments
|
||||
elif line.strip().startswith("#"):
|
||||
continue
|
||||
else:
|
||||
attrs_lines.append(line)
|
||||
|
||||
|
|
File diff suppressed because one or more lines are too long
|
@ -1,7 +1,7 @@
|
|||
[
|
||||
{
|
||||
"version": "dev",
|
||||
"title": "dev (28b61c1)",
|
||||
"title": "dev (d4d8342)",
|
||||
"aliases": []
|
||||
},
|
||||
{
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue