Skip to content
This repository was archived by the owner on Feb 18, 2026. It is now read-only.

Commit 11d098d

Browse files
Merge pull request #46 from zeixcom/feature/docs-examples
docs: update rating-stars example to use custom event
2 parents 13956ad + 80b7b95 commit 11d098d

File tree

10 files changed

+27
-29
lines changed

10 files changed

+27
-29
lines changed

docs-src/components/rating-feedback/rating-feedback.ts

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,26 @@
11
import { setProperty, UIElement } from "../../../";
22
import { InputButton } from "../input-button/input-button";
3-
import { RatingStars } from "../rating-stars/rating-stars";
43

54
export class RatingFeedback extends UIElement<{
5+
rating: number,
66
empty: boolean,
77
submitted: boolean
88
}> {
99
static localName = 'rating-feedback'
1010

1111
states = {
12+
rating: 0,
1213
empty: true,
1314
submitted: false,
1415
}
1516

1617
connectedCallback() {
1718
super.connectedCallback()
1819

19-
const stars = this.querySelector<RatingStars>('rating-stars')
20-
2120
// Event listeners for rating changes and form submission
2221
this.self
2322
.on('change-rating', (e: Event) => {
24-
const rating = (e as CustomEvent<number>).detail
25-
console.log(`Rating changed to ${rating}`)
23+
this.set('rating', (e as CustomEvent<number>).detail)
2624
})
2725
.on('submit', (e: Event) => {
2826
e.preventDefault()
@@ -47,12 +45,12 @@ export class RatingFeedback extends UIElement<{
4745
// Effects on rating changes
4846
this.first('.feedback').sync(setProperty(
4947
'hidden',
50-
() => this.get('submitted') || !(stars?.get('value') ?? 0)
48+
() => this.get('submitted') || !(this.get('rating') ?? 0)
5149
))
5250
this.all('.feedback p').sync((host, target, index) => {
5351
setProperty<HTMLElement, 'hidden'>(
5452
'hidden',
55-
() => stars?.get('value') !== index + 1
53+
() => this.get('rating') !== index + 1
5654
)(host, target)
5755
})
5856

docs-src/global.css

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -93,7 +93,7 @@
9393
}
9494
}
9595

96-
@media screen and (min-width: 75em) and (max-width: 125em) {
96+
/* @media screen and (min-width: 75em) and (max-width: 125em) {
9797
:root {
9898
--font-size-xs: clamp(0.8125rem, 0.0694vw + 0.7604rem, 0.8438rem);
9999
--font-size-s: clamp(1rem, 0.2778vw + 0.7917rem, 1.125rem);
@@ -103,7 +103,7 @@
103103
--font-size-xxl: clamp(2.5rem, 2.7778vw + 0.4167rem, 3.75rem);
104104
--font-size-xxxl: clamp(3.125rem, 4.1667vw, 5rem);
105105
}
106-
}
106+
} */
107107

108108
@media (prefers-color-scheme: dark) {
109109
:root {

docs-src/pages/about-community.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ UIElement is an **open-source project**, actively developed by [Zeix AG](https:/
2121

2222
* **Zeix AG**: [@zeixcom](https://github.com/zeixcom) – Maintainers and primary developers
2323
* **Esther Brunner**: [@estherbrunner](https://github.com/estherbrunner) – Lead developer
24+
* **Fabian Haefliger**: [@fabianhaef](https://github.com/fabianhaef) – Core team
2425

2526
### Sponsors
2627

docs/about-community.html

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -105,6 +105,7 @@ <h3>Core Team &amp; Contributors</h3>
105105
<ul>
106106
<li><strong>Zeix AG</strong>: <a href="https://github.com/zeixcom">@zeixcom</a> – Maintainers and primary developers</li>
107107
<li><strong>Esther Brunner</strong>: <a href="https://github.com/estherbrunner">@estherbrunner</a> – Lead developer</li>
108+
<li><strong>Fabian Haefliger</strong>: <a href="https://github.com/fabianhaef">@fabianhaef</a> – Core Team</li>
108109
</ul>
109110
<h3>Sponsors</h3>
110111
<callout-box class="note">

docs/assets/main.css

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

docs/assets/main.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

docs/examples/rating-feedback.html

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -174,29 +174,27 @@
174174
</p>
175175
<pre class="shiki monokai" style="background-color:#272822;color:#F8F8F2" tabindex="0"><code><span class="line"><span style="color:#F92672">import</span><span style="color:#F8F8F2"> { setProperty, UIElement } </span><span style="color:#F92672">from</span><span style="color:#E6DB74"> "../../../"</span><span style="color:#F8F8F2">;</span></span>
176176
<span class="line"><span style="color:#F92672">import</span><span style="color:#F8F8F2"> { InputButton } </span><span style="color:#F92672">from</span><span style="color:#E6DB74"> "../input-button/input-button"</span><span style="color:#F8F8F2">;</span></span>
177-
<span class="line"><span style="color:#F92672">import</span><span style="color:#F8F8F2"> { RatingStars } </span><span style="color:#F92672">from</span><span style="color:#E6DB74"> "../rating-stars/rating-stars"</span><span style="color:#F8F8F2">;</span></span>
178177
<span class="line"></span>
179178
<span class="line"><span style="color:#F92672">export</span><span style="color:#66D9EF;font-style:italic"> class</span><span> </span><span style="color:#A6E22E;text-decoration:underline">RatingFeedback</span><span style="color:#F92672"> extends</span><span style="color:#A6E22E"> UIElement</span><span style="color:#F8F8F2">&#x3C;{</span></span>
179+
<span class="line"><span style="color:#F8F8F2"> rating</span><span style="color:#F92672">:</span><span style="color:#66D9EF;font-style:italic"> number</span><span style="color:#F8F8F2">,</span></span>
180180
<span class="line"><span style="color:#F8F8F2"> empty</span><span style="color:#F92672">:</span><span style="color:#66D9EF;font-style:italic"> boolean</span><span style="color:#F8F8F2">,</span></span>
181181
<span class="line"><span style="color:#F8F8F2"> submitted</span><span style="color:#F92672">:</span><span style="color:#66D9EF;font-style:italic"> boolean</span></span>
182182
<span class="line"><span style="color:#F8F8F2">}> {</span></span>
183183
<span class="line"><span style="color:#F92672"> static</span><span style="color:#F8F8F2"> localName </span><span style="color:#F92672">=</span><span style="color:#E6DB74"> 'rating-feedback'</span></span>
184184
<span class="line"></span>
185185
<span class="line"><span style="color:#F8F8F2"> states </span><span style="color:#F92672">=</span><span style="color:#F8F8F2"> {</span></span>
186+
<span class="line"><span style="color:#F8F8F2"> rating: </span><span style="color:#AE81FF">0</span><span style="color:#F8F8F2">,</span></span>
186187
<span class="line"><span style="color:#F8F8F2"> empty: </span><span style="color:#AE81FF">true</span><span style="color:#F8F8F2">,</span></span>
187188
<span class="line"><span style="color:#F8F8F2"> submitted: </span><span style="color:#AE81FF">false</span><span style="color:#F8F8F2">,</span></span>
188189
<span class="line"><span style="color:#F8F8F2"> }</span></span>
189190
<span class="line"></span>
190191
<span class="line"><span style="color:#A6E22E"> connectedCallback</span><span style="color:#F8F8F2">() {</span></span>
191192
<span class="line"><span style="color:#FD971F"> super</span><span style="color:#F8F8F2">.</span><span style="color:#A6E22E">connectedCallback</span><span style="color:#F8F8F2">()</span></span>
192193
<span class="line"></span>
193-
<span class="line"><span style="color:#66D9EF;font-style:italic"> const</span><span style="color:#F8F8F2"> stars </span><span style="color:#F92672">=</span><span style="color:#FD971F"> this</span><span style="color:#F8F8F2">.</span><span style="color:#A6E22E">querySelector</span><span style="color:#F8F8F2">&#x3C;</span><span style="color:#A6E22E;text-decoration:underline">RatingStars</span><span style="color:#F8F8F2">>(</span><span style="color:#E6DB74">'rating-stars'</span><span style="color:#F8F8F2">)</span></span>
194-
<span class="line"></span>
195194
<span class="line"><span style="color:#88846F"> // Event listeners for rating changes and form submission</span></span>
196195
<span class="line"><span style="color:#FD971F"> this</span><span style="color:#F8F8F2">.self</span></span>
197196
<span class="line"><span style="color:#F8F8F2"> .</span><span style="color:#A6E22E">on</span><span style="color:#F8F8F2">(</span><span style="color:#E6DB74">'change-rating'</span><span style="color:#F8F8F2">, (</span><span style="color:#FD971F;font-style:italic">e</span><span style="color:#F92672">:</span><span> </span><span style="color:#A6E22E;text-decoration:underline">Event</span><span style="color:#F8F8F2">) </span><span style="color:#66D9EF;font-style:italic">=></span><span style="color:#F8F8F2"> {</span></span>
198-
<span class="line"><span style="color:#66D9EF;font-style:italic"> const</span><span style="color:#F8F8F2"> rating </span><span style="color:#F92672">=</span><span style="color:#F8F8F2"> (e </span><span style="color:#F92672">as</span><span> </span><span style="color:#A6E22E;text-decoration:underline">CustomEvent</span><span style="color:#F8F8F2">&#x3C;</span><span style="color:#66D9EF;font-style:italic">number</span><span style="color:#F8F8F2">>).detail</span></span>
199-
<span class="line"><span style="color:#F8F8F2"> console.</span><span style="color:#A6E22E">log</span><span style="color:#F8F8F2">(</span><span style="color:#E6DB74">`Rating changed to </span><span style="color:#F92672">${</span><span style="color:#F8F8F2">rating</span><span style="color:#F92672">}</span><span style="color:#E6DB74">`</span><span style="color:#F8F8F2">)</span></span>
197+
<span class="line"><span style="color:#FD971F"> this</span><span style="color:#F8F8F2">.</span><span style="color:#A6E22E">set</span><span style="color:#F8F8F2">(</span><span style="color:#E6DB74">'rating'</span><span style="color:#F8F8F2">, (e </span><span style="color:#F92672">as</span><span> </span><span style="color:#A6E22E;text-decoration:underline">CustomEvent</span><span style="color:#F8F8F2">&#x3C;</span><span style="color:#66D9EF;font-style:italic">number</span><span style="color:#F8F8F2">>).detail)</span></span>
200198
<span class="line"><span style="color:#F8F8F2"> })</span></span>
201199
<span class="line"><span style="color:#F8F8F2"> .</span><span style="color:#A6E22E">on</span><span style="color:#F8F8F2">(</span><span style="color:#E6DB74">'submit'</span><span style="color:#F8F8F2">, (</span><span style="color:#FD971F;font-style:italic">e</span><span style="color:#F92672">:</span><span> </span><span style="color:#A6E22E;text-decoration:underline">Event</span><span style="color:#F8F8F2">) </span><span style="color:#66D9EF;font-style:italic">=></span><span style="color:#F8F8F2"> {</span></span>
202200
<span class="line"><span style="color:#F8F8F2"> e.</span><span style="color:#A6E22E">preventDefault</span><span style="color:#F8F8F2">()</span></span>
@@ -221,12 +219,12 @@
221219
<span class="line"><span style="color:#88846F"> // Effects on rating changes</span></span>
222220
<span class="line"><span style="color:#FD971F"> this</span><span style="color:#F8F8F2">.</span><span style="color:#A6E22E">first</span><span style="color:#F8F8F2">(</span><span style="color:#E6DB74">'.feedback'</span><span style="color:#F8F8F2">).</span><span style="color:#A6E22E">sync</span><span style="color:#F8F8F2">(</span><span style="color:#A6E22E">setProperty</span><span style="color:#F8F8F2">(</span></span>
223221
<span class="line"><span style="color:#E6DB74"> 'hidden'</span><span style="color:#F8F8F2">,</span></span>
224-
<span class="line"><span style="color:#F8F8F2"> () </span><span style="color:#66D9EF;font-style:italic">=></span><span style="color:#FD971F"> this</span><span style="color:#F8F8F2">.</span><span style="color:#A6E22E">get</span><span style="color:#F8F8F2">(</span><span style="color:#E6DB74">'submitted'</span><span style="color:#F8F8F2">) </span><span style="color:#F92672">||</span><span style="color:#F92672"> !</span><span style="color:#F8F8F2">(stars?.</span><span style="color:#A6E22E">get</span><span style="color:#F8F8F2">(</span><span style="color:#E6DB74">'value'</span><span style="color:#F8F8F2">) </span><span style="color:#F92672">??</span><span style="color:#AE81FF"> 0</span><span style="color:#F8F8F2">)</span></span>
222+
<span class="line"><span style="color:#F8F8F2"> () </span><span style="color:#66D9EF;font-style:italic">=></span><span style="color:#FD971F"> this</span><span style="color:#F8F8F2">.</span><span style="color:#A6E22E">get</span><span style="color:#F8F8F2">(</span><span style="color:#E6DB74">'submitted'</span><span style="color:#F8F8F2">) </span><span style="color:#F92672">||</span><span style="color:#F92672"> !</span><span style="color:#F8F8F2">(</span><span style="color:#FD971F">this</span><span style="color:#F8F8F2">.</span><span style="color:#A6E22E">get</span><span style="color:#F8F8F2">(</span><span style="color:#E6DB74">'rating'</span><span style="color:#F8F8F2">) </span><span style="color:#F92672">??</span><span style="color:#AE81FF"> 0</span><span style="color:#F8F8F2">)</span></span>
225223
<span class="line"><span style="color:#F8F8F2"> ))</span></span>
226224
<span class="line"><span style="color:#FD971F"> this</span><span style="color:#F8F8F2">.</span><span style="color:#A6E22E">all</span><span style="color:#F8F8F2">(</span><span style="color:#E6DB74">'.feedback p'</span><span style="color:#F8F8F2">).</span><span style="color:#A6E22E">sync</span><span style="color:#F8F8F2">((</span><span style="color:#FD971F;font-style:italic">host</span><span style="color:#F8F8F2">, </span><span style="color:#FD971F;font-style:italic">target</span><span style="color:#F8F8F2">, </span><span style="color:#FD971F;font-style:italic">index</span><span style="color:#F8F8F2">) </span><span style="color:#66D9EF;font-style:italic">=></span><span style="color:#F8F8F2"> {</span></span>
227225
<span class="line"><span style="color:#A6E22E"> setProperty</span><span style="color:#F8F8F2">&#x3C;</span><span style="color:#A6E22E;text-decoration:underline">HTMLElement</span><span style="color:#F8F8F2">, </span><span style="color:#E6DB74">'hidden'</span><span style="color:#F8F8F2">>(</span></span>
228226
<span class="line"><span style="color:#E6DB74"> 'hidden'</span><span style="color:#F8F8F2">,</span></span>
229-
<span class="line"><span style="color:#F8F8F2"> () </span><span style="color:#66D9EF;font-style:italic">=></span><span style="color:#F8F8F2"> stars?.</span><span style="color:#A6E22E">get</span><span style="color:#F8F8F2">(</span><span style="color:#E6DB74">'value'</span><span style="color:#F8F8F2">) </span><span style="color:#F92672">!==</span><span style="color:#F8F8F2"> index </span><span style="color:#F92672">+</span><span style="color:#AE81FF"> 1</span></span>
227+
<span class="line"><span style="color:#F8F8F2"> () </span><span style="color:#66D9EF;font-style:italic">=></span><span style="color:#FD971F"> this</span><span style="color:#F8F8F2">.</span><span style="color:#A6E22E">get</span><span style="color:#F8F8F2">(</span><span style="color:#E6DB74">'rating'</span><span style="color:#F8F8F2">) </span><span style="color:#F92672">!==</span><span style="color:#F8F8F2"> index </span><span style="color:#F92672">+</span><span style="color:#AE81FF"> 1</span></span>
230228
<span class="line"><span style="color:#F8F8F2"> )(host, target)</span></span>
231229
<span class="line"><span style="color:#F8F8F2"> })</span></span>
232230
<span class="line"></span>

docs/sitemap.xml

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -3,55 +3,55 @@
33

44
<url>
55
<loc>index.html</loc>
6-
<lastmod>2025-02-24T00:44:55.385Z</lastmod>
6+
<lastmod>2025-03-03T15:55:02.970Z</lastmod>
77
<priority>1.0</priority>
88
</url>
99

1010
<url>
1111
<loc>getting-started.html</loc>
12-
<lastmod>2025-02-24T00:44:55.385Z</lastmod>
12+
<lastmod>2025-03-03T15:55:02.970Z</lastmod>
1313
<priority>0.8</priority>
1414
</url>
1515

1616
<url>
1717
<loc>building-components.html</loc>
18-
<lastmod>2025-02-24T00:44:55.385Z</lastmod>
18+
<lastmod>2025-03-03T15:55:02.970Z</lastmod>
1919
<priority>0.8</priority>
2020
</url>
2121

2222
<url>
2323
<loc>styling-components.html</loc>
24-
<lastmod>2025-02-24T00:44:55.385Z</lastmod>
24+
<lastmod>2025-03-03T15:55:02.970Z</lastmod>
2525
<priority>0.8</priority>
2626
</url>
2727

2828
<url>
2929
<loc>data-flow.html</loc>
30-
<lastmod>2025-02-24T00:44:55.385Z</lastmod>
30+
<lastmod>2025-03-03T15:55:02.970Z</lastmod>
3131
<priority>0.8</priority>
3232
</url>
3333

3434
<url>
3535
<loc>patterns-techniques.html</loc>
36-
<lastmod>2025-02-24T00:44:55.385Z</lastmod>
36+
<lastmod>2025-03-03T15:55:02.970Z</lastmod>
3737
<priority>0.8</priority>
3838
</url>
3939

4040
<url>
4141
<loc>examples-recipes.html</loc>
42-
<lastmod>2025-02-24T00:44:55.385Z</lastmod>
42+
<lastmod>2025-03-03T15:55:02.970Z</lastmod>
4343
<priority>0.8</priority>
4444
</url>
4545

4646
<url>
4747
<loc>api-reference.html</loc>
48-
<lastmod>2025-02-24T00:44:55.385Z</lastmod>
48+
<lastmod>2025-03-03T15:55:02.970Z</lastmod>
4949
<priority>0.8</priority>
5050
</url>
5151

5252
<url>
5353
<loc>about-community.html</loc>
54-
<lastmod>2025-02-24T00:44:55.385Z</lastmod>
54+
<lastmod>2025-03-03T15:55:02.970Z</lastmod>
5555
<priority>0.8</priority>
5656
</url>
5757
</urlset>

index.dev.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -325,7 +325,7 @@ var CONTEXT_REQUEST = "context-request";
325325
class ContextRequestEvent extends Event {
326326
context;
327327
callback;
328-
subscribe2;
328+
subscribe;
329329
constructor(context, callback, subscribe2 = false) {
330330
super(CONTEXT_REQUEST, {
331331
bubbles: true,

0 commit comments

Comments
 (0)