<turbo-stream action="append" target="posts_list"><template>    <div class="postbit" id="243698" data-post-id="243698">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="kip" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/kip/120/1440_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  kip
                  </h3>
		          </div>
						
			          <div class="user-title">
									<span>ex_cldr Core Team</span>
			          </div>
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>I could see updates to a component library iterating much more frequently that the core Phoenix project so I think an “official” library might introduce an unreasonable maintenance load on the core team and potentially slow down innovation.</p>
<p>I think the authors of the Petal Components library are moving pretty quickly so perhaps it will become the de-facto go-to library?</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="243698" data-batch-url="/posts/batch_likers">
                        2
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/petal-components-package-a-set-of-tailwind-styled-components-written-in-heex/43633/33">Post #32</a>
	                </div>
	            </div>
              <div id="likers-container-243698" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="243698"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #32"></div>
  </section>
</div>
    <div class="postbit" id="243700" data-post-id="243700">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="chrismccord" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/chrismccord/120/24233_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  chrismccord
                  </h3>
		          </div>
						
			          <div class="user-title">
									<span>Creator of Phoenix</span>
			          </div>
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>It’s my hope with HEEx and function components we’ll see more and more full-featured component libs (like petal), and that they will ship fully accessible components, so doing the right thing is the default for standard components. We know that developers won’t ship accessible features if it takes extra effort (unless they are forced), so a <code>&lt;.dropdown</code>, <code>&lt;.modal</code>, etc that just happens to be accessible out-of-the-box is the happy destination I hope we arrive at <img src="https://forum.elixirforum.com/images/emoji/apple/slight_smile.png?v=15" title=":slight_smile:" class="emoji" alt=":slight_smile:" loading="lazy" width="20" height="20"></p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="243700" data-batch-url="/posts/batch_likers">
                        10
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/petal-components-package-a-set-of-tailwind-styled-components-written-in-heex/43633/34">Post #33</a>
	                </div>
	            </div>
              <div id="likers-container-243700" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="243700"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #33"></div>
  </section>
</div>
    <div class="postbit" id="243718" data-post-id="243718">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="cohawk" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/cohawk/120/14326_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  cohawk
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>Yes, Kip and Chris explained what I meant much more eloquently than my use of quotes for “official standard” component library.</p>
<p>The petalframework crew is doing a fantastic job of cranking out updates and implementing user feedback.</p>
<p>There are too many component frameworks for the Phoenix core team to be too involved or manage, but adding to what Chris said maybe a checklist / test suite to ensure all the accessibility and best-practice requirements are met for a component library to be “blessed as official” is probably more what I meant.  But that’s also what we are doing here as a kind of community review board.</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="243718" data-batch-url="/posts/batch_likers">
                        3
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/petal-components-package-a-set-of-tailwind-styled-components-written-in-heex/43633/35">Post #34</a>
	                </div>
	            </div>
              <div id="likers-container-243718" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="243718"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #34"></div>
  </section>
</div>
    <div class="postbit" id="243764" data-post-id="243764">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="thomasbrus" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/thomasbrus/120/40196_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  thomasbrus
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>I fiddled around a bit more yesterday with my Phoenix.Component → Stimulus → React idea. (I don’t know if this is the best place to share it, but in case anyone is going down the same path, here it goes):</p>
<ul>
<li><code>components/form_component.ex</code>:<br>
<em>this just calls a <code>react/1</code> function component with <code>controller</code> (name of the Stimulus controller) and <code>props</code> (a map of props that will be provided to the React component):</em></li>
</ul>
<pre data-code-wrap="elixir"><code class="lang-elixir">  def multi_select(assigns) do
    ~H"""
    &lt;.react controller="multi-select" props={extra_attributes(assigns)}&gt;
      &lt;%= Phoenix.HTML.Form.multiple_select(@form, @field, @options, class: "multi-select__select", data: [multi_select_target: "select"]) %&gt;
      &lt;div data-multi-select-target="component"&gt;&lt;/div&gt;
    &lt;/.react&gt;
    """
  end
</code></pre>
<ul>
<li><code>components/react_component.ex</code>:<br>
<em>pretty straightforward also, outputs something like &lt;div data-controller=“multi-select” data-multi-select-props-value={…} /&gt;</em>`</li>
</ul>
<pre data-code-wrap="elixir"><code class="lang-elixir">defmodule MyAppWeb.ReactComponent do
  use Phoenix.Component
  import Phoenix.Naming, only: [camelize: 2]
  @react_props %{class: :class_name}

  def react(assigns) do
    assigns = assigns |&gt; assign(:data, controller: assigns.controller, "#{props_key(assigns)}": props_value(assigns))

    ~H"""
    &lt;div data={@data} class="react"&gt;
      &lt;%= if @inner_block do %&gt;&lt;%= render_slot(@inner_block) %&gt;&lt;% end %&gt;
    &lt;/div&gt;
    """
  end

  defp props_key(assigns) do
    "#{assigns.controller}-props-value"
  end

  defp props_value(assigns) do
    assigns.props
    |&gt; Enum.map(fn {key, value} -&gt; {Map.get(@react_props, key, key), value} end)
    |&gt; Enum.map(fn {key, value} -&gt; {camelize(to_string(key), :lower), value} end)
    |&gt; Map.new()
    |&gt; Jason.encode!()
  end
end
</code></pre>
<ul>
<li><code>stimulus_controllers/multi_select_controller.jsx</code><br>
<em>and then this connects the 3rd party React component to the DOM:</em></li>
</ul>
<pre data-code-wrap="jsx"><code class="lang-jsx">import { MultiSelect } from '@mantine/core';

export default class extends Controller {
  static values = { props: Object };
  static targets = ['select', 'component'];

  connect() {
    ReactDOM.render(
      &lt;MultiSelect ...  data={this.options}  onChange={this.handleChange} /&gt;,
      this.componentTarget
    );
  }

  disconnect() {
    ReactDOM.unmountComponentAtNode(this.componentTarget);
  }

  handleChange = (values) =&gt; { ... };
  get options() { ... }
  // ... more stuff here ...
}
</code></pre>
<p>And it looks like this:</p>
<p></p><div class="lightbox-wrapper"><a class="lightbox" href="https://forum.elixirforum.com/uploads/default/original/3X/9/0/9040b5c5fb50abfff0e353e071cc9f22c4a78213.png" data-download-href="https://forum.elixirforum.com/uploads/default/9040b5c5fb50abfff0e353e071cc9f22c4a78213" title="Schermafbeelding 2022-02-22 om 09.21.08" rel="nofollow"><img src="https://forum.elixirforum.com/uploads/default/optimized/3X/9/0/9040b5c5fb50abfff0e353e071cc9f22c4a78213_2_690x324.png" alt="Schermafbeelding 2022-02-22 om 09.21.08" data-base62-sha1="kA7ozJlbbqwfpLsxvQhymVqV2IH" width="690" height="324" srcset="https://forum.elixirforum.com/uploads/default/optimized/3X/9/0/9040b5c5fb50abfff0e353e071cc9f22c4a78213_2_690x324.png, https://forum.elixirforum.com/uploads/default/original/3X/9/0/9040b5c5fb50abfff0e353e071cc9f22c4a78213.png 1.5x, https://forum.elixirforum.com/uploads/default/original/3X/9/0/9040b5c5fb50abfff0e353e071cc9f22c4a78213.png 2x" data-dominant-color="F5F8FA"><div class="meta"><svg class="fa d-icon d-icon-far-image svg-icon" aria-hidden="true"><use href="#far-image"></use></svg><span class="filename">Schermafbeelding 2022-02-22 om 09.21.08</span><span class="informations">1012×476 15.6 KB</span><svg class="fa d-icon d-icon-discourse-expand svg-icon" aria-hidden="true"><use href="#discourse-expand"></use></svg></div></a></div><p></p>
<p>This is just 1 approach to implement such a more advanced component. At the end of the day it’s nice to have a function component (<code>&lt;.multi_select ... /&gt;</code>) that you can call without worrying (too much) about it’s implementation. It happens to be fully accessible also.</p>
<p>Only thing I’m not happy with is that it is stil bringing in quite a bit of javascript and I have to make sure the integration works well enough <img src="https://forum.elixirforum.com/images/emoji/apple/thinking.png?v=15" title=":thinking:" class="emoji" alt=":thinking:" loading="lazy" width="20" height="20"> For example supporting grouped select options will be a bit more code. I have also not tested it in a morphdom setting (just single render for now).</p>
<p>I can also see the appeal of implementing such components via LiveView / LiveView.JS or Alpine.js. It will obviously result in more code when building it from the ground up but it won’t have a dependency on React/Node/etc.</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="243764" data-batch-url="/posts/batch_likers">
                        1
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/petal-components-package-a-set-of-tailwind-styled-components-written-in-heex/43633/36">Post #35</a>
	                </div>
	            </div>
              <div id="likers-container-243764" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="243764"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #35"></div>
  </section>
</div>
    <div class="postbit" id="243767" data-post-id="243767">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="LostKobrakai" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/LostKobrakai/120/3072_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  LostKobrakai
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<aside class="quote no-group" data-username="cohawk" data-post="35" data-topic="43633">
<div class="title">
<div class="quote-controls"></div>
<img alt="" width="24" height="24" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/cohawk/48/14326_2.png" class="avatar"> cohawk:</div>
<blockquote>
<p>maybe a checklist / test suite to ensure all the accessibility and best-practice requirements are met for a component library to be “blessed as official” is probably more what I meant.</p>
</blockquote>
</aside>
<p>While this sounds nice at least accessibility is not as simple as a checklist to deal with. There‘s not s „correct“ way of doing it. Even the official aria docs afaik are full of examples, but not prescriptions or how tos. There‘s a lot more gray in that topic than black and white.</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="243767" data-batch-url="/posts/batch_likers">
                        2
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/petal-components-package-a-set-of-tailwind-styled-components-written-in-heex/43633/37">Post #36</a>
	                </div>
	            </div>
              <div id="likers-container-243767" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="243767"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #36"></div>
  </section>
</div>
    <div class="postbit" id="243774" data-post-id="243774">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="TwistingTwists" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/TwistingTwists/120/21564_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  TwistingTwists
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>But there can be “good defaults” right ? Never had to deal with accessibility myself until now. So, I don’t understand how ‘difficult’ is it define ‘sane defaults’.</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="243774" data-batch-url="/posts/batch_likers">
                        2
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/petal-components-package-a-set-of-tailwind-styled-components-written-in-heex/43633/38">Post #37</a>
	                </div>
	            </div>
              <div id="likers-container-243774" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="243774"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #37"></div>
  </section>
</div>
    <div class="postbit" id="243775" data-post-id="243775">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="LostKobrakai" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/LostKobrakai/120/3072_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  LostKobrakai
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>There are for sure some generalizable rules, mostly on the smaller scale, but there’s no “this is how you make your calendar component accessible”.</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="243775" data-batch-url="/posts/batch_likers">
                        2
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/petal-components-package-a-set-of-tailwind-styled-components-written-in-heex/43633/39">Post #38</a>
	                </div>
	            </div>
              <div id="likers-container-243775" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="243775"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #38"></div>
  </section>
</div>
    <div class="postbit" id="244766" data-post-id="244766">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="nhoban" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/nhoban/120/25078_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  nhoban
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<h2><a name="p-244766-new-update-to-petal-components-v0134-1" class="anchor" href="#p-244766-new-update-to-petal-components-v0134-1" aria-label="Heading link" rel="nofollow"></a>New update to Petal Components - v0.13.4</h2>
<h3><a name="p-244766-table-2" class="anchor" href="#p-244766-table-2" aria-label="Heading link" rel="nofollow"></a>Table</h3>
<p></p><div class="lightbox-wrapper"><a class="lightbox" href="https://forum.elixirforum.com/uploads/default/original/3X/c/6/c6061f244595c207cc5b17f9625539889e567b4c.png" data-download-href="https://forum.elixirforum.com/uploads/default/c6061f244595c207cc5b17f9625539889e567b4c" title="CleanShot 2022-03-07 at 13.17.17@2x" rel="nofollow"><img src="https://forum.elixirforum.com/uploads/default/optimized/3X/c/6/c6061f244595c207cc5b17f9625539889e567b4c_2_690x176.png" alt="CleanShot 2022-03-07 at 13.17.17@2x" data-base62-sha1="sfNEAJwWOuGjSIJziM2MwkxxEtu" width="690" height="176" srcset="https://forum.elixirforum.com/uploads/default/optimized/3X/c/6/c6061f244595c207cc5b17f9625539889e567b4c_2_690x176.png, https://forum.elixirforum.com/uploads/default/optimized/3X/c/6/c6061f244595c207cc5b17f9625539889e567b4c_2_1035x264.png 1.5x, https://forum.elixirforum.com/uploads/default/optimized/3X/c/6/c6061f244595c207cc5b17f9625539889e567b4c_2_1380x352.png 2x" data-dominant-color="FCFCFC"><div class="meta"><svg class="fa d-icon d-icon-far-image svg-icon" aria-hidden="true"><use href="#far-image"></use></svg><span class="filename">CleanShot 2022-03-07 at 13.17.17@2x</span><span class="informations">2458×628 43.5 KB</span><svg class="fa d-icon d-icon-discourse-expand svg-icon" aria-hidden="true"><use href="#discourse-expand"></use></svg></div></a></div><p></p>
<p></p><div class="lightbox-wrapper"><a class="lightbox" href="https://forum.elixirforum.com/uploads/default/original/3X/b/0/b0db2ca44c379f98120750d14fae4d7d13915ea1.png" data-download-href="https://forum.elixirforum.com/uploads/default/b0db2ca44c379f98120750d14fae4d7d13915ea1" title="CleanShot 2022-03-07 at 13.17.08@2x" rel="nofollow"><img src="https://forum.elixirforum.com/uploads/default/optimized/3X/b/0/b0db2ca44c379f98120750d14fae4d7d13915ea1_2_689x178.png" alt="CleanShot 2022-03-07 at 13.17.08@2x" data-base62-sha1="pexC3f2lcPfcaqb9Ied8MVLeJzj" width="689" height="178" srcset="https://forum.elixirforum.com/uploads/default/optimized/3X/b/0/b0db2ca44c379f98120750d14fae4d7d13915ea1_2_689x178.png, https://forum.elixirforum.com/uploads/default/optimized/3X/b/0/b0db2ca44c379f98120750d14fae4d7d13915ea1_2_1033x267.png 1.5x, https://forum.elixirforum.com/uploads/default/optimized/3X/b/0/b0db2ca44c379f98120750d14fae4d7d13915ea1_2_1378x356.png 2x" data-dominant-color="232B38"><div class="meta"><svg class="fa d-icon d-icon-far-image svg-icon" aria-hidden="true"><use href="#far-image"></use></svg><span class="filename">CleanShot 2022-03-07 at 13.17.08@2x</span><span class="informations">2474×640 41.6 KB</span><svg class="fa d-icon d-icon-discourse-expand svg-icon" aria-hidden="true"><use href="#discourse-expand"></use></svg></div></a></div><p></p>
<p></p><div class="lightbox-wrapper"><a class="lightbox" href="https://forum.elixirforum.com/uploads/default/original/3X/8/4/8407a216e1febb3a9418a0eb7208324ff5da88b6.jpeg" data-download-href="https://forum.elixirforum.com/uploads/default/8407a216e1febb3a9418a0eb7208324ff5da88b6" title="CleanShot 2022-03-07 at 13.17.29@2x" rel="nofollow"><img src="https://forum.elixirforum.com/uploads/default/original/3X/8/4/8407a216e1febb3a9418a0eb7208324ff5da88b6.jpeg" alt="CleanShot 2022-03-07 at 13.17.29@2x" data-base62-sha1="iPZnyZY9sG2CyzhlV2L53Dt1YHQ" width="690" height="223" data-dominant-color="FAFAFA"><div class="meta"><svg class="fa d-icon d-icon-far-image svg-icon" aria-hidden="true"><use href="#far-image"></use></svg><span class="filename">CleanShot 2022-03-07 at 13.17.29@2x</span><span class="informations">1200×389 21.5 KB</span><svg class="fa d-icon d-icon-discourse-expand svg-icon" aria-hidden="true"><use href="#discourse-expand"></use></svg></div></a></div><p></p>
<p></p><div class="lightbox-wrapper"><a class="lightbox" href="https://forum.elixirforum.com/uploads/default/original/3X/5/a/5aaa706d6577367fd73e9184b2e6abecd2be309c.jpeg" data-download-href="https://forum.elixirforum.com/uploads/default/5aaa706d6577367fd73e9184b2e6abecd2be309c" title="CleanShot 2022-03-07 at 13.17.36@2x" rel="nofollow"><img src="https://forum.elixirforum.com/uploads/default/original/3X/5/a/5aaa706d6577367fd73e9184b2e6abecd2be309c.jpeg" alt="CleanShot 2022-03-07 at 13.17.36@2x" data-base62-sha1="cW48sZZ9VSlqmCgnsiJDhHluivi" width="690" height="227" data-dominant-color="262E3D"><div class="meta"><svg class="fa d-icon d-icon-far-image svg-icon" aria-hidden="true"><use href="#far-image"></use></svg><span class="filename">CleanShot 2022-03-07 at 13.17.36@2x</span><span class="informations">1200×395 20.1 KB</span><svg class="fa d-icon d-icon-discourse-expand svg-icon" aria-hidden="true"><use href="#discourse-expand"></use></svg></div></a></div><p></p>
<p>Find the full documentation at: <a href="https://petal.build/docs/table" class="inline-onebox" rel="noopener nofollow ugc">Table</a></p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="244766" data-batch-url="/posts/batch_likers">
                        3
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/petal-components-package-a-set-of-tailwind-styled-components-written-in-heex/43633/40">Post #39</a>
	                </div>
	            </div>
              <div id="likers-container-244766" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="244766"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #39"></div>
  </section>
</div>
    <div class="postbit" id="244785" data-post-id="244785">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="thomasbrus" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/thomasbrus/120/40196_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  thomasbrus
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>FYI, I think :label and :sub_label should be excluded here:</p>
<aside class="onebox githubblob" data-onebox-src="https://github.com/petalframework/petal_components/blob/main/lib/petal_components/table.ex#L85-L88">
  <header class="source">

      <a href="https://github.com/petalframework/petal_components/blob/main/lib/petal_components/table.ex#L85-L88" target="_blank" rel="noopener nofollow ugc">github.com/petalframework/petal_components</a>
  </header>

  <article class="onebox-body">
    <h4><a href="https://github.com/petalframework/petal_components/blob/main/lib/petal_components/table.ex#L85-L88" target="_blank" rel="noopener nofollow ugc">lib/petal_components/table.ex</a></h4>

<div class="git-blob-info">
  <a href="https://github.com/petalframework/petal_components/blob/main/lib/petal_components/table.ex#L85-L88" rel="noopener nofollow ugc"><code>main</code></a>
</div>



    <pre class="onebox"><code class="lang-ex">
      <ol class="start lines" start="85" style="counter-reset: li-counter 84 ;">
          <li>  &lt;% else %&gt;</li>
          <li>    {render_slot(@inner_block)}</li>
          <li>  &lt;% end %&gt;</li>
          <li>&lt;/table&gt;</li>
      </ol>
    </code></pre>



  </article>

  <div class="onebox-metadata">
    
    
  </div>

  <div style="clear: both"></div>
</aside>

<p><img src="https://forum.elixirforum.com/uploads/default/original/3X/c/e/ceadbc23027fe0c38b6478a23200d5a46ef0e474.png" alt="label" data-base62-sha1="tumAdOsK3rj4u9DXBQwlqG9oYRu" width="505" height="54"></p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="244785" data-batch-url="/posts/batch_likers">
                        0
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/petal-components-package-a-set-of-tailwind-styled-components-written-in-heex/43633/41">Post #40</a>
	                </div>
	            </div>
              <div id="likers-container-244785" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="244785"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #40"></div>
  </section>
</div>
    <div class="postbit" id="244931" data-post-id="244931">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="nhoban" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/nhoban/120/25078_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  nhoban
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>Thanks for pointing this out, just pushed a fix.</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="244931" data-batch-url="/posts/batch_likers">
                        2
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/petal-components-package-a-set-of-tailwind-styled-components-written-in-heex/43633/42">Post #41</a>
	                </div>
	            </div>
              <div id="likers-container-244931" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="244931"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #41"></div>
  </section>
</div>
</template></turbo-stream><turbo-stream action="replace" target="load-more-container"><template><div id="load-more-container" class="load-more-container">
    <a class="load-more-button" data-turbo-stream="true" href="/topics/43633/load_more?page=5">Load more posts (27 remaining)</a>
</div></template></turbo-stream>