luxen-ui 0.6.2 → 0.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/cli.mjs +54 -10
- package/cdn/chunks/decorate.js +1 -1
- package/cdn/chunks/floating-ui.dom.js +2 -0
- package/cdn/chunks/floating-ui.dom.js.map +1 -0
- package/cdn/chunks/lit-html.js +3 -0
- package/cdn/chunks/lit-html.js.map +1 -0
- package/cdn/chunks/lit.js +1 -2
- package/cdn/chunks/lit.js.map +1 -1
- package/cdn/chunks/module.js +717 -0
- package/cdn/chunks/module.js.map +1 -0
- package/cdn/chunks/native.js +2 -0
- package/cdn/chunks/native.js.map +1 -0
- package/cdn/chunks/static-html.js +2 -0
- package/cdn/chunks/static-html.js.map +1 -0
- package/cdn/custom-elements.json +1412 -12629
- package/cdn/elements/avatar/avatar.d.ts +5 -0
- package/cdn/elements/avatar/avatar.d.ts.map +1 -1
- package/cdn/elements/avatar/avatar.js +5 -5
- package/cdn/elements/avatar/avatar.js.map +1 -1
- package/cdn/elements/button/button.meta.d.ts +33 -0
- package/cdn/elements/button/button.meta.d.ts.map +1 -0
- package/cdn/elements/button/button.meta.js +0 -0
- package/cdn/elements/carousel/carousel.d.ts +6 -0
- package/cdn/elements/carousel/carousel.d.ts.map +1 -1
- package/cdn/elements/carousel/carousel.js +1 -1
- package/cdn/elements/carousel/carousel.js.map +1 -1
- package/cdn/elements/carousel-item/carousel-item.d.ts +2 -0
- package/cdn/elements/carousel-item/carousel-item.d.ts.map +1 -1
- package/cdn/elements/carousel-item/carousel-item.js +1 -1
- package/cdn/elements/carousel-item/carousel-item.js.map +1 -1
- package/cdn/elements/close-button/close-button.meta.d.ts +24 -0
- package/cdn/elements/close-button/close-button.meta.d.ts.map +1 -0
- package/cdn/elements/close-button/close-button.meta.js +0 -0
- package/cdn/elements/dialog/dialog.d.ts +12 -6
- package/cdn/elements/dialog/dialog.d.ts.map +1 -1
- package/cdn/elements/dialog/dialog.js +8 -5
- package/cdn/elements/dialog/dialog.js.map +1 -1
- package/cdn/elements/dialog/dialog.styles.js +1 -1
- package/cdn/elements/dialog/dialog.styles.js.map +1 -1
- package/cdn/elements/disclosure/disclosure.meta.d.ts +28 -0
- package/cdn/elements/disclosure/disclosure.meta.d.ts.map +1 -0
- package/cdn/elements/disclosure/disclosure.meta.js +0 -0
- package/cdn/elements/divider/divider.d.ts +1 -1
- package/cdn/elements/divider/divider.js.map +1 -1
- package/cdn/elements/drawer/drawer.d.ts +5 -0
- package/cdn/elements/drawer/drawer.d.ts.map +1 -1
- package/cdn/elements/drawer/drawer.js +1 -1
- package/cdn/elements/drawer/drawer.js.map +1 -1
- package/cdn/elements/dropdown/dropdown.d.ts +2 -0
- package/cdn/elements/dropdown/dropdown.d.ts.map +1 -1
- package/cdn/elements/dropdown/dropdown.js +1 -1
- package/cdn/elements/dropdown/dropdown.js.map +1 -1
- package/cdn/elements/dropdown-item/dropdown-item.d.ts +2 -0
- package/cdn/elements/dropdown-item/dropdown-item.d.ts.map +1 -1
- package/cdn/elements/dropdown-item/dropdown-item.js +1 -1
- package/cdn/elements/dropdown-item/dropdown-item.js.map +1 -1
- package/cdn/elements/icon/icon.js +1 -1
- package/cdn/elements/icon/icon.js.map +1 -1
- package/cdn/elements/input-otp/input-otp.d.ts +2 -0
- package/cdn/elements/input-otp/input-otp.d.ts.map +1 -1
- package/cdn/elements/input-otp/input-otp.js.map +1 -1
- package/cdn/elements/input-stepper/input-stepper.d.ts +2 -0
- package/cdn/elements/input-stepper/input-stepper.d.ts.map +1 -1
- package/cdn/elements/input-stepper/input-stepper.js +1 -1
- package/cdn/elements/input-stepper/input-stepper.js.map +1 -1
- package/cdn/elements/kbd/kbd.meta.d.ts +14 -0
- package/cdn/elements/kbd/kbd.meta.d.ts.map +1 -0
- package/cdn/elements/kbd/kbd.meta.js +0 -0
- package/cdn/elements/popover/popover.js +1 -1
- package/cdn/elements/popover/popover.js.map +1 -1
- package/cdn/elements/progress/progress.meta.d.ts +22 -0
- package/cdn/elements/progress/progress.meta.d.ts.map +1 -0
- package/cdn/elements/progress/progress.meta.js +0 -0
- package/cdn/elements/prose-editor/index.d.ts +2 -0
- package/cdn/elements/prose-editor/index.d.ts.map +1 -0
- package/cdn/elements/prose-editor/index.js +2 -0
- package/cdn/elements/prose-editor/index.js.map +1 -0
- package/cdn/elements/prose-editor/prose-editor.d.ts +113 -0
- package/cdn/elements/prose-editor/prose-editor.d.ts.map +1 -0
- package/cdn/elements/prose-editor/prose-editor.js +180 -0
- package/cdn/elements/prose-editor/prose-editor.js.map +1 -0
- package/cdn/elements/rating/rating.d.ts +2 -0
- package/cdn/elements/rating/rating.d.ts.map +1 -1
- package/cdn/elements/rating/rating.js +1 -1
- package/cdn/elements/rating/rating.js.map +1 -1
- package/cdn/elements/select/select.meta.d.ts +28 -0
- package/cdn/elements/select/select.meta.d.ts.map +1 -0
- package/cdn/elements/select/select.meta.js +0 -0
- package/cdn/elements/skeleton/skeleton.d.ts +3 -0
- package/cdn/elements/skeleton/skeleton.d.ts.map +1 -1
- package/cdn/elements/skeleton/skeleton.js.map +1 -1
- package/cdn/elements/spinner/spinner.js +1 -1
- package/cdn/elements/spinner/spinner.js.map +1 -1
- package/cdn/elements/sticky-bar/sticky-bar.js +1 -1
- package/cdn/elements/sticky-bar/sticky-bar.js.map +1 -1
- package/cdn/elements/stories-viewer/stories-viewer.d.ts +1 -1
- package/cdn/elements/stories-viewer/stories-viewer.d.ts.map +1 -1
- package/cdn/elements/stories-viewer/stories-viewer.js +26 -26
- package/cdn/elements/stories-viewer/stories-viewer.js.map +1 -1
- package/cdn/elements/story/story.d.ts +10 -1
- package/cdn/elements/story/story.d.ts.map +1 -1
- package/cdn/elements/story/story.js +20 -20
- package/cdn/elements/story/story.js.map +1 -1
- package/cdn/elements/toast/toast.d.ts +5 -0
- package/cdn/elements/toast/toast.d.ts.map +1 -1
- package/cdn/elements/toast/toast.js.map +1 -1
- package/cdn/elements/tooltip/tooltip.js +1 -1
- package/cdn/elements/tooltip/tooltip.js.map +1 -1
- package/cdn/elements/tree/tree.d.ts +2 -0
- package/cdn/elements/tree/tree.d.ts.map +1 -1
- package/cdn/elements/tree/tree.js +1 -1
- package/cdn/elements/tree/tree.js.map +1 -1
- package/cdn/elements/tree-item/tree-item.d.ts +2 -0
- package/cdn/elements/tree-item/tree-item.d.ts.map +1 -1
- package/cdn/elements/tree-item/tree-item.js +1 -1
- package/cdn/elements/tree-item/tree-item.js.map +1 -1
- package/cdn/registry.d.ts +1 -1
- package/cdn/registry.d.ts.map +1 -1
- package/cdn/registry.js.map +1 -1
- package/cdn/shared/controllers/has-slot-controller.d.ts +37 -0
- package/cdn/shared/controllers/has-slot-controller.d.ts.map +1 -0
- package/cdn/shared/controllers/has-slot-controller.js +2 -0
- package/cdn/shared/controllers/has-slot-controller.js.map +1 -0
- package/cdn/shared/controllers/popover.js +1 -1
- package/cdn/shared/controllers/popover.js.map +1 -1
- package/cdn/shared/styles/host.styles.js +1 -1
- package/cdn/standalone.css +132 -1
- package/cdn/standalone.js +25743 -191
- package/cdn/standalone.js.map +1 -1
- package/cdn/static-tag.d.ts +17 -0
- package/cdn/static-tag.d.ts.map +1 -0
- package/cdn/static-tag.js +2 -0
- package/cdn/static-tag.js.map +1 -0
- package/cdn/styles/elements/prose-editor.css +129 -0
- package/cdn/styles/elements/toast.css +1 -1
- package/dist/css/elements/prose-editor.css +129 -0
- package/dist/css/elements/toast.css +1 -1
- package/dist/custom-elements.json +1412 -12629
- package/dist/elements/avatar/avatar.d.ts +5 -0
- package/dist/elements/avatar/avatar.d.ts.map +1 -1
- package/dist/elements/avatar/avatar.js +5 -0
- package/dist/elements/button/button.meta.d.ts +33 -0
- package/dist/elements/button/button.meta.d.ts.map +1 -0
- package/dist/elements/button/button.meta.js +44 -0
- package/dist/elements/carousel/carousel.d.ts +6 -0
- package/dist/elements/carousel/carousel.d.ts.map +1 -1
- package/dist/elements/carousel/carousel.js +6 -0
- package/dist/elements/carousel-item/carousel-item.d.ts +2 -0
- package/dist/elements/carousel-item/carousel-item.d.ts.map +1 -1
- package/dist/elements/carousel-item/carousel-item.js +2 -0
- package/dist/elements/close-button/close-button.meta.d.ts +24 -0
- package/dist/elements/close-button/close-button.meta.d.ts.map +1 -0
- package/dist/elements/close-button/close-button.meta.js +30 -0
- package/dist/elements/dialog/dialog.css +15 -0
- package/dist/elements/dialog/dialog.d.ts +12 -6
- package/dist/elements/dialog/dialog.d.ts.map +1 -1
- package/dist/elements/dialog/dialog.js +21 -7
- package/dist/elements/disclosure/disclosure.meta.d.ts +28 -0
- package/dist/elements/disclosure/disclosure.meta.d.ts.map +1 -0
- package/dist/elements/disclosure/disclosure.meta.js +34 -0
- package/dist/elements/divider/divider.d.ts +1 -1
- package/dist/elements/divider/divider.js +1 -1
- package/dist/elements/drawer/drawer.d.ts +5 -0
- package/dist/elements/drawer/drawer.d.ts.map +1 -1
- package/dist/elements/drawer/drawer.js +5 -0
- package/dist/elements/dropdown/dropdown.d.ts +2 -0
- package/dist/elements/dropdown/dropdown.d.ts.map +1 -1
- package/dist/elements/dropdown/dropdown.js +2 -0
- package/dist/elements/dropdown-item/dropdown-item.d.ts +2 -0
- package/dist/elements/dropdown-item/dropdown-item.d.ts.map +1 -1
- package/dist/elements/dropdown-item/dropdown-item.js +2 -0
- package/dist/elements/input-otp/input-otp.d.ts +2 -0
- package/dist/elements/input-otp/input-otp.d.ts.map +1 -1
- package/dist/elements/input-otp/input-otp.js +2 -0
- package/dist/elements/input-stepper/input-stepper.d.ts +2 -0
- package/dist/elements/input-stepper/input-stepper.d.ts.map +1 -1
- package/dist/elements/input-stepper/input-stepper.js +5 -1
- package/dist/elements/kbd/kbd.meta.d.ts +14 -0
- package/dist/elements/kbd/kbd.meta.d.ts.map +1 -0
- package/dist/elements/kbd/kbd.meta.js +20 -0
- package/dist/elements/progress/progress.meta.d.ts +22 -0
- package/dist/elements/progress/progress.meta.d.ts.map +1 -0
- package/dist/elements/progress/progress.meta.js +28 -0
- package/dist/elements/prose-editor/index.d.ts +2 -0
- package/dist/elements/prose-editor/index.d.ts.map +1 -0
- package/dist/elements/prose-editor/index.js +4 -0
- package/dist/elements/prose-editor/prose-editor.css +133 -0
- package/dist/elements/prose-editor/prose-editor.d.ts +114 -0
- package/dist/elements/prose-editor/prose-editor.d.ts.map +1 -0
- package/dist/elements/prose-editor/prose-editor.js +481 -0
- package/dist/elements/rating/rating.d.ts +2 -0
- package/dist/elements/rating/rating.d.ts.map +1 -1
- package/dist/elements/rating/rating.js +2 -0
- package/dist/elements/select/select.meta.d.ts +28 -0
- package/dist/elements/select/select.meta.d.ts.map +1 -0
- package/dist/elements/select/select.meta.js +34 -0
- package/dist/elements/skeleton/skeleton.d.ts +3 -0
- package/dist/elements/skeleton/skeleton.d.ts.map +1 -1
- package/dist/elements/skeleton/skeleton.js +3 -0
- package/dist/elements/stories-viewer/stories-viewer.d.ts +1 -1
- package/dist/elements/stories-viewer/stories-viewer.d.ts.map +1 -1
- package/dist/elements/stories-viewer/stories-viewer.js +23 -19
- package/dist/elements/story/story.d.ts +10 -1
- package/dist/elements/story/story.d.ts.map +1 -1
- package/dist/elements/story/story.js +29 -17
- package/dist/elements/toast/toast.d.ts +5 -0
- package/dist/elements/toast/toast.d.ts.map +1 -1
- package/dist/elements/toast/toast.js +5 -0
- package/dist/elements/tree/tree.d.ts +2 -0
- package/dist/elements/tree/tree.d.ts.map +1 -1
- package/dist/elements/tree/tree.js +2 -0
- package/dist/elements/tree-item/tree-item.d.ts +2 -0
- package/dist/elements/tree-item/tree-item.d.ts.map +1 -1
- package/dist/elements/tree-item/tree-item.js +2 -0
- package/dist/metadata/avatar.json +83 -0
- package/dist/metadata/badge.json +59 -0
- package/dist/metadata/button.json +138 -0
- package/dist/metadata/carousel-item.json +32 -0
- package/dist/metadata/carousel.json +388 -0
- package/dist/metadata/close-button.json +90 -0
- package/dist/metadata/dialog.json +163 -0
- package/dist/metadata/disclosure.json +88 -0
- package/dist/metadata/divider.json +65 -0
- package/dist/metadata/drawer.json +176 -0
- package/dist/metadata/dropdown-item.json +85 -0
- package/dist/metadata/dropdown.json +157 -0
- package/dist/metadata/icon.json +49 -0
- package/dist/metadata/index.json +4062 -0
- package/dist/metadata/input-otp.json +86 -0
- package/dist/metadata/input-stepper.json +122 -0
- package/dist/metadata/kbd.json +37 -0
- package/dist/metadata/popover.json +157 -0
- package/dist/metadata/progress.json +71 -0
- package/dist/metadata/prose-editor.json +365 -0
- package/dist/metadata/rating.json +126 -0
- package/dist/metadata/select.json +82 -0
- package/dist/metadata/skeleton.json +56 -0
- package/dist/metadata/spinner.json +47 -0
- package/dist/metadata/sticky-bar.json +93 -0
- package/dist/metadata/stories-viewer.json +316 -0
- package/dist/metadata/stories.json +109 -0
- package/dist/metadata/story.json +148 -0
- package/dist/metadata/tabs.json +74 -0
- package/dist/metadata/toast.json +122 -0
- package/dist/metadata/tooltip.json +144 -0
- package/dist/metadata/tree-item.json +199 -0
- package/dist/metadata/tree.json +130 -0
- package/dist/registry.d.ts +1 -1
- package/dist/registry.d.ts.map +1 -1
- package/dist/shared/controllers/has-slot-controller.d.ts +37 -0
- package/dist/shared/controllers/has-slot-controller.d.ts.map +1 -0
- package/dist/shared/controllers/has-slot-controller.js +66 -0
- package/dist/static-tag.d.ts +17 -0
- package/dist/static-tag.d.ts.map +1 -0
- package/dist/static-tag.js +22 -0
- package/dist/templates/elements/avatar.md +21 -24
- package/dist/templates/elements/badge.md +9 -15
- package/dist/templates/elements/button.md +31 -41
- package/dist/templates/elements/close-button.md +24 -36
- package/dist/templates/elements/dialog.md +73 -54
- package/dist/templates/elements/drawer.md +39 -52
- package/dist/templates/elements/progress.md +13 -23
- package/dist/templates/elements/prose-editor.md +211 -0
- package/dist/templates/elements/select.md +20 -31
- package/dist/templates/elements/sticky-bar.md +16 -60
- package/dist/templates/elements/toast.md +33 -53
- package/dist/templates/elements/tree.md +39 -67
- package/elements.json +46 -1
- package/package.json +13 -3
- package/templates/SKILL.md.tpl +5 -1
|
@@ -4,10 +4,12 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
4
4
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
5
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
6
|
};
|
|
7
|
-
import {
|
|
7
|
+
import { nothing, unsafeCSS } from 'lit';
|
|
8
|
+
import { html } from 'lit/static-html.js';
|
|
8
9
|
import { property, query, state } from 'lit/decorators.js';
|
|
9
10
|
import { map } from 'lit/directives/map.js';
|
|
10
11
|
import { LuxenElement } from '../../shared/luxen-element.js';
|
|
12
|
+
import { staticTag } from '../../static-tag.js';
|
|
11
13
|
import hostStyles from '../../shared/styles/host.styles.js';
|
|
12
14
|
import rawStyles from './stories-viewer.css?inline';
|
|
13
15
|
const styles = unsafeCSS(rawStyles);
|
|
@@ -509,6 +511,8 @@ export class LuxenStoriesViewer extends LuxenElement {
|
|
|
509
511
|
const chapterStarts = this._chapterStarts.length
|
|
510
512
|
? this._chapterStarts
|
|
511
513
|
: (currentStory?.getChapterStarts() ?? [0]);
|
|
514
|
+
const iconTag = staticTag('icon');
|
|
515
|
+
const spinnerTag = staticTag('spinner');
|
|
512
516
|
return html `
|
|
513
517
|
<dialog
|
|
514
518
|
part="dialog"
|
|
@@ -551,20 +555,20 @@ export class LuxenStoriesViewer extends LuxenElement {
|
|
|
551
555
|
<slot name="header">
|
|
552
556
|
${currentStory?.poster
|
|
553
557
|
? html `<img
|
|
554
|
-
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
|
|
558
|
+
class="header-thumb"
|
|
559
|
+
src=${currentStory.poster}
|
|
560
|
+
alt=""
|
|
561
|
+
/>`
|
|
558
562
|
: nothing}
|
|
559
563
|
${currentStory?.label
|
|
560
564
|
? html `<div class="header-text">
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
|
|
565
|
+
<div
|
|
566
|
+
part="header-label"
|
|
567
|
+
class="header-label"
|
|
568
|
+
>
|
|
569
|
+
${currentStory.label}
|
|
570
|
+
</div>
|
|
571
|
+
</div>`
|
|
568
572
|
: nothing}
|
|
569
573
|
</slot>
|
|
570
574
|
</header>
|
|
@@ -582,7 +586,7 @@ export class LuxenStoriesViewer extends LuxenElement {
|
|
|
582
586
|
aria-label="Close"
|
|
583
587
|
@click=${() => this.close()}
|
|
584
588
|
>
|
|
585
|
-
|
|
589
|
+
<${iconTag} name="mdi:close"></${iconTag}>
|
|
586
590
|
</button>
|
|
587
591
|
</slot>
|
|
588
592
|
<button
|
|
@@ -593,7 +597,7 @@ export class LuxenStoriesViewer extends LuxenElement {
|
|
|
593
597
|
aria-pressed=${this._paused ? 'true' : 'false'}
|
|
594
598
|
@click=${() => (this._paused ? this.play() : this.pause())}
|
|
595
599
|
>
|
|
596
|
-
|
|
600
|
+
<${iconTag} name=${this._paused ? 'mdi:play' : 'mdi:pause'}></${iconTag}>
|
|
597
601
|
</button>
|
|
598
602
|
<button
|
|
599
603
|
type="button"
|
|
@@ -606,7 +610,7 @@ export class LuxenStoriesViewer extends LuxenElement {
|
|
|
606
610
|
this.emit('mute-change', { detail: { muted: this.muted } });
|
|
607
611
|
}}
|
|
608
612
|
>
|
|
609
|
-
|
|
613
|
+
<${iconTag} name=${this.muted ? 'mdi:volume-off' : 'mdi:volume-high'}></${iconTag}>
|
|
610
614
|
</button>
|
|
611
615
|
</div>
|
|
612
616
|
|
|
@@ -618,13 +622,13 @@ export class LuxenStoriesViewer extends LuxenElement {
|
|
|
618
622
|
?muted=${this.muted}
|
|
619
623
|
></video>
|
|
620
624
|
|
|
621
|
-
|
|
625
|
+
<${spinnerTag}
|
|
622
626
|
part="spinner"
|
|
623
627
|
class="spinner"
|
|
624
628
|
aria-label="Loading"
|
|
625
629
|
data-no-gesture
|
|
626
630
|
data-state=${this._loading ? 'loading' : 'idle'}
|
|
627
|
-
|
|
631
|
+
></${spinnerTag}>
|
|
628
632
|
|
|
629
633
|
<!-- Tap zones: invisible overlays that translate clicks into previous/next.
|
|
630
634
|
Sit BELOW header / overlay / chevron buttons in z-order, above the video. -->
|
|
@@ -666,7 +670,7 @@ export class LuxenStoriesViewer extends LuxenElement {
|
|
|
666
670
|
aria-label="Previous story"
|
|
667
671
|
@click=${() => this.previousStory()}
|
|
668
672
|
>
|
|
669
|
-
|
|
673
|
+
<${iconTag} name="mdi:chevron-left"></${iconTag}>
|
|
670
674
|
</button>`}
|
|
671
675
|
${isLastStory
|
|
672
676
|
? nothing
|
|
@@ -677,7 +681,7 @@ export class LuxenStoriesViewer extends LuxenElement {
|
|
|
677
681
|
aria-label="Next story"
|
|
678
682
|
@click=${() => this.nextStory()}
|
|
679
683
|
>
|
|
680
|
-
|
|
684
|
+
<${iconTag} name="mdi:chevron-right"></${iconTag}>
|
|
681
685
|
</button>`}
|
|
682
686
|
</dialog>
|
|
683
687
|
`;
|
|
@@ -9,6 +9,15 @@ import { LuxenElement } from '../../shared/luxen-element.js';
|
|
|
9
9
|
* @slot cta - Overlay surfaced by the viewer when this story is active (e.g. product card, link).
|
|
10
10
|
* @slot header - Header overlay (e.g. avatar + author).
|
|
11
11
|
*
|
|
12
|
+
* @cssproperty --pulse-color - Color of the attention pulse ring (only with the `pulse` attribute).
|
|
13
|
+
* @cssproperty --pulse-scale - Peak scale of the pulse animation. Default `1.2`.
|
|
14
|
+
* @cssproperty --pulse-duration - Duration of one pulse cycle. Default `1.6s`.
|
|
15
|
+
*
|
|
16
|
+
* @cssClass .l-story-trigger - The clickable thumbnail button wrapper.
|
|
17
|
+
* @cssClass .l-story-thumb - The poster/video thumbnail frame (ring + offset).
|
|
18
|
+
* @cssClass .l-story-play - The centered play-icon overlay.
|
|
19
|
+
* @cssClass .l-story-label - The caption text below the thumbnail.
|
|
20
|
+
*
|
|
12
21
|
* @customElement l-story
|
|
13
22
|
*/
|
|
14
23
|
export declare class LuxenStory extends LuxenElement {
|
|
@@ -38,6 +47,6 @@ export declare class LuxenStory extends LuxenElement {
|
|
|
38
47
|
connectedCallback(): void;
|
|
39
48
|
updated(changed: Map<string, unknown>): void;
|
|
40
49
|
disconnectedCallback(): void;
|
|
41
|
-
render(): import("lit").TemplateResult
|
|
50
|
+
render(): import("lit").TemplateResult;
|
|
42
51
|
}
|
|
43
52
|
//# sourceMappingURL=story.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"story.d.ts","sourceRoot":"","sources":["../../../src/html/elements/story/story.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"story.d.ts","sourceRoot":"","sources":["../../../src/html/elements/story/story.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAG7D;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,qBAAa,UAAW,SAAQ,YAAY;IACjC,gBAAgB;IAIzB,iBAAiB;IAEjB,GAAG,SAAM;IAET,mEAAmE;IAEnE,MAAM,SAAM;IAEZ,0QAA0Q;IAE1Q,OAAO,SAAM;IAEb,qHAAqH;IAErH,KAAK,SAAM;IAEX,4FAA4F;IAE5F,QAAQ,SAAK;IAEb,iEAAiE;IAEjE,IAAI,UAAS;IAEb,mGAAmG;IAEnG,KAAK,UAAS;IAEd,oKAAoK;IAEpK,QAAQ,SAAM;IAEd,mDAAmD;IAEnD,MAAM,SAAM;IAEZ,gHAAgH;IAChH,gBAAgB,IAAI,MAAM,EAAE;IAWE,OAAO,CAAC,aAAa,CAAC,CAAmB;IAEvE,OAAO,CAAC,GAAG,CAAC,CAAuB;IAE1B,iBAAiB;IAOjB,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC;IAwBrC,oBAAoB;IAKpB,MAAM;CA2ChB"}
|
|
@@ -4,9 +4,11 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
4
4
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
5
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
6
|
};
|
|
7
|
-
import {
|
|
7
|
+
import { nothing } from 'lit';
|
|
8
|
+
import { html } from 'lit/static-html.js';
|
|
8
9
|
import { property, query } from 'lit/decorators.js';
|
|
9
10
|
import { LuxenElement } from '../../shared/luxen-element.js';
|
|
11
|
+
import { staticTag } from '../../static-tag.js';
|
|
10
12
|
/**
|
|
11
13
|
* @summary A single story declaration inside an `<l-stories>` row.
|
|
12
14
|
*
|
|
@@ -17,6 +19,15 @@ import { LuxenElement } from '../../shared/luxen-element.js';
|
|
|
17
19
|
* @slot cta - Overlay surfaced by the viewer when this story is active (e.g. product card, link).
|
|
18
20
|
* @slot header - Header overlay (e.g. avatar + author).
|
|
19
21
|
*
|
|
22
|
+
* @cssproperty --pulse-color - Color of the attention pulse ring (only with the `pulse` attribute).
|
|
23
|
+
* @cssproperty --pulse-scale - Peak scale of the pulse animation. Default `1.2`.
|
|
24
|
+
* @cssproperty --pulse-duration - Duration of one pulse cycle. Default `1.6s`.
|
|
25
|
+
*
|
|
26
|
+
* @cssClass .l-story-trigger - The clickable thumbnail button wrapper.
|
|
27
|
+
* @cssClass .l-story-thumb - The poster/video thumbnail frame (ring + offset).
|
|
28
|
+
* @cssClass .l-story-play - The centered play-icon overlay.
|
|
29
|
+
* @cssClass .l-story-label - The caption text below the thumbnail.
|
|
30
|
+
*
|
|
20
31
|
* @customElement l-story
|
|
21
32
|
*/
|
|
22
33
|
export class LuxenStory extends LuxenElement {
|
|
@@ -89,6 +100,7 @@ export class LuxenStory extends LuxenElement {
|
|
|
89
100
|
this._io = undefined;
|
|
90
101
|
}
|
|
91
102
|
render() {
|
|
103
|
+
const iconTag = staticTag('icon');
|
|
92
104
|
return html `
|
|
93
105
|
<button
|
|
94
106
|
type="button"
|
|
@@ -99,29 +111,29 @@ export class LuxenStory extends LuxenElement {
|
|
|
99
111
|
<span class="l-story-thumb">
|
|
100
112
|
${this.preview
|
|
101
113
|
? html `<video
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
114
|
+
data-preview
|
|
115
|
+
src=${this.preview}
|
|
116
|
+
poster=${this.poster || nothing}
|
|
117
|
+
muted
|
|
118
|
+
loop
|
|
119
|
+
playsinline
|
|
120
|
+
autoplay
|
|
121
|
+
preload="auto"
|
|
122
|
+
aria-hidden="true"
|
|
123
|
+
></video>`
|
|
112
124
|
: this.poster
|
|
113
125
|
? html `<img
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
126
|
+
src=${this.poster}
|
|
127
|
+
alt=""
|
|
128
|
+
loading="lazy"
|
|
129
|
+
decoding="async"
|
|
130
|
+
/>`
|
|
119
131
|
: nothing}
|
|
120
132
|
<span
|
|
121
133
|
class="l-story-play"
|
|
122
134
|
aria-hidden="true"
|
|
123
135
|
>
|
|
124
|
-
|
|
136
|
+
<${iconTag} name="mdi:play"></${iconTag}>
|
|
125
137
|
</span>
|
|
126
138
|
</span>
|
|
127
139
|
${this.label ? html `<span class="l-story-label">${this.label}</span>` : nothing}
|
|
@@ -42,6 +42,11 @@ export type ToastOptions = (ToastOptionsBase & {
|
|
|
42
42
|
* @cssproperty --width - Width of the toast stack.
|
|
43
43
|
* @cssproperty --show-duration - Duration of the show animation.
|
|
44
44
|
* @cssproperty --hide-duration - Duration of the hide animation.
|
|
45
|
+
*
|
|
46
|
+
* @cssClass .l-toast-accent - The left accent bar, colored by variant.
|
|
47
|
+
* @cssClass .l-toast-icon - The leading icon, colored by variant (replaces the accent bar).
|
|
48
|
+
* @cssClass .l-toast-content - The content column wrapping the heading and message.
|
|
49
|
+
* @cssClass .l-toast-timer - The countdown progress bar (for timed toasts).
|
|
45
50
|
*/
|
|
46
51
|
export declare class Toast extends LuxenElement {
|
|
47
52
|
/** Use light DOM — no Shadow DOM. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toast.d.ts","sourceRoot":"","sources":["../../../src/html/elements/toast/toast.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAI7D,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,OAAO;QACf,4EAA4E;QAC5E,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;KACjE;CACF;AAED,yEAAyE;AACzE,qBAAa,SAAU,SAAQ,WAAW;CAAG;AAE7C,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,SAAS,GAAG,SAAS,GAAG,QAAQ,CAAC;AAErE,MAAM,MAAM,cAAc,GACtB,WAAW,GACX,YAAY,GACZ,SAAS,GACT,cAAc,GACd,eAAe,GACf,YAAY,CAAC;AAEjB,UAAU,gBAAgB;IACxB,yDAAyD;IACzD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,qDAAqD;IACrD,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,+EAA+E;IAC/E,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,wEAAwE;IACxE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,oEAAoE;IACpE,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,MAAM,YAAY,GACpB,CAAC,gBAAgB,GAAG;IAAsC,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,KAAK,CAAA;CAAE,CAAC,GACvF,CAAC,gBAAgB,GAAG;IAClB,IAAI,CAAC,EAAE,KAAK,CAAC;IACb,sDAAsD,CAAC,IAAI,EAAE,MAAM,CAAC;CACrE,CAAC,CAAC;AASP
|
|
1
|
+
{"version":3,"file":"toast.d.ts","sourceRoot":"","sources":["../../../src/html/elements/toast/toast.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAI7D,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,OAAO;QACf,4EAA4E;QAC5E,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;KACjE;CACF;AAED,yEAAyE;AACzE,qBAAa,SAAU,SAAQ,WAAW;CAAG;AAE7C,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,SAAS,GAAG,SAAS,GAAG,QAAQ,CAAC;AAErE,MAAM,MAAM,cAAc,GACtB,WAAW,GACX,YAAY,GACZ,SAAS,GACT,cAAc,GACd,eAAe,GACf,YAAY,CAAC;AAEjB,UAAU,gBAAgB;IACxB,yDAAyD;IACzD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,qDAAqD;IACrD,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,+EAA+E;IAC/E,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,wEAAwE;IACxE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,oEAAoE;IACpE,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,MAAM,YAAY,GACpB,CAAC,gBAAgB,GAAG;IAAsC,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,KAAK,CAAA;CAAE,CAAC,GACvF,CAAC,gBAAgB,GAAG;IAClB,IAAI,CAAC,EAAE,KAAK,CAAC;IACb,sDAAsD,CAAC,IAAI,EAAE,MAAM,CAAC;CACrE,CAAC,CAAC;AASP;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,KAAM,SAAQ,YAAY;IACrC,qCAAqC;IAC5B,gBAAgB;IAIzB,iDAAiD;IACpB,SAAS,EAAE,cAAc,CAAa;IAEnE,2EAA2E;IAChC,QAAQ,SAAQ;IAE3D,+EAA+E;IAClD,OAAO,CAAC,EAAE,YAAY,CAAC;IAEpD,OAAO,CAAC,OAAO,CAA0C;IACzD,OAAO,CAAC,cAAc,CAAmC;IACzD,OAAO,CAAC,eAAe,CAAS;IAEvB,iBAAiB;IAWjB,oBAAoB;IAM7B,4CAA4C;IAC5C,KAAK,CAAC,OAAO,EAAE,YAAY,GAAG,WAAW;IAqLzC,OAAO,CAAC,WAAW;IAUnB,OAAO,CAAC,WAAW;IAcnB,OAAO,CAAC,YAAY;IAapB,OAAO,CAAC,UAAU;IAgDlB,OAAO,CAAC,iBAAiB;IAOzB,OAAO,CAAC,iBAAiB;IAsBzB,OAAO,CAAC,mBAAmB,CAQzB;IAIF,OAAO,CAAC,UAAU,CAShB;CACH;AAkBD,qFAAqF;AACrF,wBAAgB,KAAK,CAAC,OAAO,EAAE,YAAY,GAAG,WAAW,CAExD"}
|
|
@@ -26,6 +26,11 @@ export class ToastItem extends HTMLElement {
|
|
|
26
26
|
* @cssproperty --width - Width of the toast stack.
|
|
27
27
|
* @cssproperty --show-duration - Duration of the show animation.
|
|
28
28
|
* @cssproperty --hide-duration - Duration of the hide animation.
|
|
29
|
+
*
|
|
30
|
+
* @cssClass .l-toast-accent - The left accent bar, colored by variant.
|
|
31
|
+
* @cssClass .l-toast-icon - The leading icon, colored by variant (replaces the accent bar).
|
|
32
|
+
* @cssClass .l-toast-content - The content column wrapping the heading and message.
|
|
33
|
+
* @cssClass .l-toast-timer - The countdown progress bar (for timed toasts).
|
|
29
34
|
*/
|
|
30
35
|
export class Toast extends LuxenElement {
|
|
31
36
|
constructor() {
|
|
@@ -19,6 +19,8 @@ export type TreeSelection = 'single' | 'multiple' | 'leaf' | 'none';
|
|
|
19
19
|
* @cssproperty --item-gap - Horizontal gap between chevron, prefix, label and suffix on the row; also drives the content slot left indent. Default `0.375rem`.
|
|
20
20
|
*
|
|
21
21
|
* @event selection-change - Fired when the selected items change. Detail: `{ selection: TreeItem[] }`.
|
|
22
|
+
*
|
|
23
|
+
* @customElement l-tree
|
|
22
24
|
*/
|
|
23
25
|
export declare class Tree extends LuxenElement {
|
|
24
26
|
static styles: import("lit").CSSResult[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tree.d.ts","sourceRoot":"","sources":["../../../src/html/elements/tree/tree.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AAE3D,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAE7D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAM1D,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,UAAU,GAAG,MAAM,GAAG,MAAM,CAAC;AAEpE
|
|
1
|
+
{"version":3,"file":"tree.d.ts","sourceRoot":"","sources":["../../../src/html/elements/tree/tree.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AAE3D,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAE7D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAM1D,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,UAAU,GAAG,MAAM,GAAG,MAAM,CAAC;AAEpE;;;;;;;;;;;;;;;;;;;GAmBG;AACH,qBAAa,IAAK,SAAQ,YAAY;IACpC,OAAgB,MAAM,4BAAwB;IAE9C,OAAO,CAAC,iBAAiB,CAAC,CAAmB;IAC7C,OAAO,CAAC,gBAAgB,CAAyB;IAEjD;;;;;;OAMG;IAEH,QAAQ,CAAC,SAAS,EAAE,aAAa,CAAY;IAE7C;;;;OAIG;IAEH,QAAQ,CAAC,WAAW,UAAS;IAEpB,iBAAiB;IAUjB,oBAAoB;IAMpB,OAAO,CAAC,OAAO,EAAE,cAAc,CAAC,IAAI,CAAC;IAQ9C,yEAAyE;IACzE,WAAW,CAAC,EAAE,eAAsB,EAAE;;KAAK,GAAG,QAAQ,EAAE;IAOxD,wCAAwC;IACxC,YAAY,IAAI,QAAQ,EAAE;IAI1B,4CAA4C;IAC5C,SAAS;IAMT,4BAA4B;IAC5B,WAAW;IAQX,OAAO,CAAC,QAAQ;IAWhB,OAAO,CAAC,YAAY;IAQpB,OAAO,CAAC,kBAAkB;IAO1B,OAAO,CAAC,UAAU;IAKlB,OAAO,CAAC,cAAc;IAUtB,2DAA2D;IAC3D,OAAO,CAAC,aAAa;IAcrB,OAAO,CAAC,aAAa,CAGnB;IAEF,OAAO,CAAC,kBAAkB;IAoB1B,OAAO,CAAC,mBAAmB;IAQ3B,OAAO,CAAC,WAAW;IAcnB,OAAO,CAAC,oBAAoB;IAS5B,0EAA0E;IAC1E,OAAO,CAAC,mBAAmB;IA6B3B,OAAO,CAAC,oBAAoB;IAM5B,OAAO,CAAC,QAAQ,CAqDd;IAEF,OAAO,CAAC,cAAc;IAWtB,OAAO,CAAC,UAAU;IAQlB,OAAO,CAAC,UAAU,CAMhB;IAEF,OAAO,CAAC,UAAU,CAqEhB;IAEO,MAAM;CAehB"}
|
|
@@ -40,6 +40,8 @@ const styles = unsafeCSS(rawStyles);
|
|
|
40
40
|
* @cssproperty --item-gap - Horizontal gap between chevron, prefix, label and suffix on the row; also drives the content slot left indent. Default `0.375rem`.
|
|
41
41
|
*
|
|
42
42
|
* @event selection-change - Fired when the selected items change. Detail: `{ selection: TreeItem[] }`.
|
|
43
|
+
*
|
|
44
|
+
* @customElement l-tree
|
|
43
45
|
*/
|
|
44
46
|
export class Tree extends LuxenElement {
|
|
45
47
|
constructor() {
|
|
@@ -25,6 +25,8 @@ import { LuxenElement } from '../../shared/luxen-element.js';
|
|
|
25
25
|
* @event expand - Fired when the item is expanded.
|
|
26
26
|
* @event collapse - Fired when the item is collapsed.
|
|
27
27
|
* @event lazy-load - Fired when a lazy item is expanded for the first time. Consumers should append children and set `lazy=false`.
|
|
28
|
+
*
|
|
29
|
+
* @customElement l-tree-item
|
|
28
30
|
*/
|
|
29
31
|
export declare class TreeItem extends LuxenElement {
|
|
30
32
|
static styles: import("lit").CSSResult[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tree-item.d.ts","sourceRoot":"","sources":["../../../src/html/elements/tree-item/tree-item.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AAE3D,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAO7D
|
|
1
|
+
{"version":3,"file":"tree-item.d.ts","sourceRoot":"","sources":["../../../src/html/elements/tree-item/tree-item.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AAE3D,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAO7D;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,qBAAa,QAAS,SAAQ,YAAY;IACxC,OAAgB,MAAM,4BAAwB;IAE9C,OAAO,CAAC,UAAU,CAA0B;IAC5C,OAAO,CAAC,cAAc,CAAC,CAAmB;IAE1C,oCAAoC;IAEpC,QAAQ,CAAC,QAAQ,UAAS;IAE1B,oCAAoC;IAEpC,QAAQ,CAAC,QAAQ,UAAS;IAE1B,yEAAyE;IAEzE,QAAQ,CAAC,aAAa,UAAS;IAE/B,oCAAoC;IAEpC,QAAQ,CAAC,QAAQ,UAAS;IAE1B,8EAA8E;IAE9E,QAAQ,CAAC,IAAI,UAAS;IAEtB,+DAA+D;IAE/D,QAAQ,CAAC,OAAO,UAAS;IAEzB,sDAAsD;IACtD,IAAI,YAAY,CAAC,KAAK,EAAE,OAAO,EAG9B;IACD,IAAI,YAAY,IAAI,OAAO,CAE1B;IACD,OAAO,CAAC,aAAa,CAAS;IAE9B,mEAAmE;IACnE,IAAI,KAAK,CAAC,KAAK,EAAE,MAAM,EAGtB;IACD,IAAI,KAAK,IAAI,MAAM,CAElB;IACD,OAAO,CAAC,MAAM,CAAK;IAEnB,uDAAuD;IACvD,IAAI,WAAW,IAAI,OAAO,CAEzB;IACD,OAAO,CAAC,YAAY,CAAS;IAE7B,0EAA0E;IAC1E,gBAAgB,CAAC,EAAE,eAAsB,EAAE;;KAAK,GAAG,QAAQ,EAAE;IAO7D,4DAA4D;IAC5D,MAAM,IAAI,OAAO;IAIjB,2CAA2C;IAC3C,YAAY,IAAI,MAAM;IAUb,iBAAiB;IAQjB,oBAAoB;IAKpB,OAAO,CAAC,OAAO,EAAE,cAAc,CAAC,IAAI,CAAC;IAe9C,OAAO,CAAC,SAAS;IAMjB,OAAO,CAAC,aAAa;IAmBrB,+EAA+E;IAC/E,MAAM;IASN,OAAO,CAAC,iBAAiB,CAUvB;IAEO,MAAM;CAwFhB"}
|
|
@@ -48,6 +48,8 @@ const styles = unsafeCSS(rawStyles);
|
|
|
48
48
|
* @event expand - Fired when the item is expanded.
|
|
49
49
|
* @event collapse - Fired when the item is collapsed.
|
|
50
50
|
* @event lazy-load - Fired when a lazy item is expanded for the first time. Consumers should append children and set `lazy=false`.
|
|
51
|
+
*
|
|
52
|
+
* @customElement l-tree-item
|
|
51
53
|
*/
|
|
52
54
|
export class TreeItem extends LuxenElement {
|
|
53
55
|
constructor() {
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "avatar",
|
|
3
|
+
"displayName": "Avatar",
|
|
4
|
+
"type": "shadow",
|
|
5
|
+
"isCustomElement": true,
|
|
6
|
+
"tag": "l-avatar",
|
|
7
|
+
"nativeTag": null,
|
|
8
|
+
"selector": "l-avatar",
|
|
9
|
+
"summary": "An avatar component for displaying user images, initials, or a default icon.",
|
|
10
|
+
"status": "stable",
|
|
11
|
+
"appearances": [],
|
|
12
|
+
"import": {
|
|
13
|
+
"css": "luxen-ui/css/avatar",
|
|
14
|
+
"js": "luxen-ui/avatar"
|
|
15
|
+
},
|
|
16
|
+
"properties": [
|
|
17
|
+
{
|
|
18
|
+
"name": "src",
|
|
19
|
+
"attribute": "src",
|
|
20
|
+
"type": "string",
|
|
21
|
+
"default": "''",
|
|
22
|
+
"reflects": false,
|
|
23
|
+
"description": ""
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
"name": "name",
|
|
27
|
+
"attribute": "name",
|
|
28
|
+
"type": "string",
|
|
29
|
+
"default": "''",
|
|
30
|
+
"reflects": false,
|
|
31
|
+
"description": ""
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
"name": "size",
|
|
35
|
+
"attribute": "size",
|
|
36
|
+
"type": "string",
|
|
37
|
+
"default": "'md'",
|
|
38
|
+
"reflects": true,
|
|
39
|
+
"description": ""
|
|
40
|
+
},
|
|
41
|
+
{
|
|
42
|
+
"name": "badge",
|
|
43
|
+
"attribute": "badge",
|
|
44
|
+
"type": "number",
|
|
45
|
+
"default": "0",
|
|
46
|
+
"reflects": false,
|
|
47
|
+
"description": ""
|
|
48
|
+
},
|
|
49
|
+
{
|
|
50
|
+
"name": "interactive",
|
|
51
|
+
"attribute": "interactive",
|
|
52
|
+
"type": "boolean",
|
|
53
|
+
"default": "false",
|
|
54
|
+
"reflects": true,
|
|
55
|
+
"description": ""
|
|
56
|
+
}
|
|
57
|
+
],
|
|
58
|
+
"attributes": [],
|
|
59
|
+
"events": [],
|
|
60
|
+
"methods": [],
|
|
61
|
+
"slots": [],
|
|
62
|
+
"cssClasses": [
|
|
63
|
+
{
|
|
64
|
+
"name": ".l-avatar-group",
|
|
65
|
+
"description": "Flex wrapper that overlaps a row of stacked avatars."
|
|
66
|
+
}
|
|
67
|
+
],
|
|
68
|
+
"cssParts": [],
|
|
69
|
+
"cssProperties": [
|
|
70
|
+
{
|
|
71
|
+
"name": "--color",
|
|
72
|
+
"default": null,
|
|
73
|
+
"description": "Background fill color for initials and the default icon."
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
"name": "--appearance",
|
|
77
|
+
"default": null,
|
|
78
|
+
"description": "Set to `circle` for a fully circular avatar (default is a rounded square)."
|
|
79
|
+
}
|
|
80
|
+
],
|
|
81
|
+
"commands": [],
|
|
82
|
+
"examples": []
|
|
83
|
+
}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "badge",
|
|
3
|
+
"displayName": "Badge",
|
|
4
|
+
"type": "custom",
|
|
5
|
+
"isCustomElement": true,
|
|
6
|
+
"tag": "l-badge",
|
|
7
|
+
"nativeTag": null,
|
|
8
|
+
"selector": "l-badge",
|
|
9
|
+
"summary": "A badge component for displaying small status indicators.",
|
|
10
|
+
"status": "stable",
|
|
11
|
+
"appearances": [],
|
|
12
|
+
"import": {
|
|
13
|
+
"css": "luxen-ui/css/badge",
|
|
14
|
+
"js": "luxen-ui/badge"
|
|
15
|
+
},
|
|
16
|
+
"properties": [
|
|
17
|
+
{
|
|
18
|
+
"name": "variant",
|
|
19
|
+
"attribute": "variant",
|
|
20
|
+
"type": "BadgeVariant | undefined",
|
|
21
|
+
"default": null,
|
|
22
|
+
"reflects": true,
|
|
23
|
+
"description": "Style variant: `info`, `success`, `warning`, `danger`, or `neutral` (default)"
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
"name": "pill",
|
|
27
|
+
"attribute": "pill",
|
|
28
|
+
"type": "boolean",
|
|
29
|
+
"default": "false",
|
|
30
|
+
"reflects": true,
|
|
31
|
+
"description": "Display as pill shape"
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
"name": "size",
|
|
35
|
+
"attribute": "size",
|
|
36
|
+
"type": "BadgeSize | undefined",
|
|
37
|
+
"default": null,
|
|
38
|
+
"reflects": true,
|
|
39
|
+
"description": "Badge size: `sm`, `lg`. Default is md."
|
|
40
|
+
},
|
|
41
|
+
{
|
|
42
|
+
"name": "appearance",
|
|
43
|
+
"attribute": "appearance",
|
|
44
|
+
"type": "BadgeAppearance | undefined",
|
|
45
|
+
"default": null,
|
|
46
|
+
"reflects": true,
|
|
47
|
+
"description": "Visual appearance: `filled`, `filled-outlined`, `accent`. Default is outlined."
|
|
48
|
+
}
|
|
49
|
+
],
|
|
50
|
+
"attributes": [],
|
|
51
|
+
"events": [],
|
|
52
|
+
"methods": [],
|
|
53
|
+
"slots": [],
|
|
54
|
+
"cssClasses": [],
|
|
55
|
+
"cssParts": [],
|
|
56
|
+
"cssProperties": [],
|
|
57
|
+
"commands": [],
|
|
58
|
+
"examples": []
|
|
59
|
+
}
|
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "button",
|
|
3
|
+
"displayName": "Button",
|
|
4
|
+
"type": "native",
|
|
5
|
+
"isCustomElement": false,
|
|
6
|
+
"tag": null,
|
|
7
|
+
"nativeTag": "button",
|
|
8
|
+
"selector": ".l-button",
|
|
9
|
+
"summary": "Buttons trigger actions such as submitting forms, confirming dialogs, or navigating.",
|
|
10
|
+
"status": "stable",
|
|
11
|
+
"appearances": [],
|
|
12
|
+
"import": {
|
|
13
|
+
"css": "luxen-ui/css/button",
|
|
14
|
+
"js": null
|
|
15
|
+
},
|
|
16
|
+
"properties": [],
|
|
17
|
+
"attributes": [
|
|
18
|
+
{
|
|
19
|
+
"name": "disabled",
|
|
20
|
+
"data": false,
|
|
21
|
+
"values": [],
|
|
22
|
+
"description": "Disables the button."
|
|
23
|
+
},
|
|
24
|
+
{
|
|
25
|
+
"name": "command",
|
|
26
|
+
"data": false,
|
|
27
|
+
"values": [],
|
|
28
|
+
"description": "Invoker command (`show-modal`, `close`, `show-popover`, etc.)."
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
"name": "commandfor",
|
|
32
|
+
"data": false,
|
|
33
|
+
"values": [],
|
|
34
|
+
"description": "ID of the target element for `command`."
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
"name": "data-variant",
|
|
38
|
+
"data": true,
|
|
39
|
+
"values": [
|
|
40
|
+
"primary",
|
|
41
|
+
"destructive"
|
|
42
|
+
],
|
|
43
|
+
"description": "Visual variant. Default is the secondary style."
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
"name": "data-size",
|
|
47
|
+
"data": true,
|
|
48
|
+
"values": [
|
|
49
|
+
"sm",
|
|
50
|
+
"lg",
|
|
51
|
+
"xl"
|
|
52
|
+
],
|
|
53
|
+
"description": "Control size. Default is md."
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
"name": "data-icon-only",
|
|
57
|
+
"data": true,
|
|
58
|
+
"values": [],
|
|
59
|
+
"description": "Icon-only mode (square button, width equals height). Auto-detected for a single icon child."
|
|
60
|
+
},
|
|
61
|
+
{
|
|
62
|
+
"name": "data-press-effect",
|
|
63
|
+
"data": true,
|
|
64
|
+
"values": [],
|
|
65
|
+
"description": "Press effect (scale + translate on active)."
|
|
66
|
+
}
|
|
67
|
+
],
|
|
68
|
+
"events": [],
|
|
69
|
+
"methods": [],
|
|
70
|
+
"slots": [],
|
|
71
|
+
"cssClasses": [
|
|
72
|
+
{
|
|
73
|
+
"name": ".l-button",
|
|
74
|
+
"description": "Base button style."
|
|
75
|
+
}
|
|
76
|
+
],
|
|
77
|
+
"cssParts": [],
|
|
78
|
+
"cssProperties": [
|
|
79
|
+
{
|
|
80
|
+
"name": "--height",
|
|
81
|
+
"default": "32px",
|
|
82
|
+
"description": "Button height (md size)."
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
"name": "--padding-inline",
|
|
86
|
+
"default": "0.625rem",
|
|
87
|
+
"description": "Horizontal padding."
|
|
88
|
+
},
|
|
89
|
+
{
|
|
90
|
+
"name": "--background-color",
|
|
91
|
+
"default": null,
|
|
92
|
+
"description": "Background color."
|
|
93
|
+
},
|
|
94
|
+
{
|
|
95
|
+
"name": "--background-color-hover",
|
|
96
|
+
"default": null,
|
|
97
|
+
"description": "Background color on hover."
|
|
98
|
+
},
|
|
99
|
+
{
|
|
100
|
+
"name": "--background-color-active",
|
|
101
|
+
"default": null,
|
|
102
|
+
"description": "Background color on press."
|
|
103
|
+
},
|
|
104
|
+
{
|
|
105
|
+
"name": "--text-color",
|
|
106
|
+
"default": null,
|
|
107
|
+
"description": "Text color."
|
|
108
|
+
},
|
|
109
|
+
{
|
|
110
|
+
"name": "--text-color-hover",
|
|
111
|
+
"default": null,
|
|
112
|
+
"description": "Text color on hover."
|
|
113
|
+
},
|
|
114
|
+
{
|
|
115
|
+
"name": "--border-color",
|
|
116
|
+
"default": null,
|
|
117
|
+
"description": "Border color."
|
|
118
|
+
},
|
|
119
|
+
{
|
|
120
|
+
"name": "--border-color-hover",
|
|
121
|
+
"default": null,
|
|
122
|
+
"description": "Border color on hover."
|
|
123
|
+
},
|
|
124
|
+
{
|
|
125
|
+
"name": "--font-size",
|
|
126
|
+
"default": null,
|
|
127
|
+
"description": "Font size."
|
|
128
|
+
}
|
|
129
|
+
],
|
|
130
|
+
"commands": [],
|
|
131
|
+
"examples": [
|
|
132
|
+
{
|
|
133
|
+
"title": "Primary",
|
|
134
|
+
"language": "html",
|
|
135
|
+
"code": "<button class=\"l-button\" data-variant=\"primary\">Save</button>"
|
|
136
|
+
}
|
|
137
|
+
]
|
|
138
|
+
}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "carousel-item",
|
|
3
|
+
"displayName": "Carousel item",
|
|
4
|
+
"type": "custom",
|
|
5
|
+
"isCustomElement": true,
|
|
6
|
+
"tag": "l-carousel-item",
|
|
7
|
+
"nativeTag": null,
|
|
8
|
+
"selector": "l-carousel-item",
|
|
9
|
+
"summary": "A single slide inside an `<l-carousel>`.",
|
|
10
|
+
"status": "stable",
|
|
11
|
+
"appearances": [],
|
|
12
|
+
"import": {
|
|
13
|
+
"css": null,
|
|
14
|
+
"js": "luxen-ui/carousel-item"
|
|
15
|
+
},
|
|
16
|
+
"properties": [],
|
|
17
|
+
"attributes": [],
|
|
18
|
+
"events": [],
|
|
19
|
+
"methods": [],
|
|
20
|
+
"slots": [],
|
|
21
|
+
"cssClasses": [],
|
|
22
|
+
"cssParts": [],
|
|
23
|
+
"cssProperties": [
|
|
24
|
+
{
|
|
25
|
+
"name": "--aspect-ratio",
|
|
26
|
+
"default": null,
|
|
27
|
+
"description": "Aspect ratio of the slide."
|
|
28
|
+
}
|
|
29
|
+
],
|
|
30
|
+
"commands": [],
|
|
31
|
+
"examples": []
|
|
32
|
+
}
|