@reliability-design/web 1.4.4 → 1.4.6
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/dist/components/rel-accordion/rel-accordion.ts +13 -1
- package/dist/components/rel-alert/rel-alert.ts +1 -1
- package/dist/components/rel-autocomplete/rel-autocomplete.ts +33 -2
- package/dist/components/rel-badge/rel-badge.ts +6 -1
- package/dist/components/rel-button/rel-button.ts +18 -2
- package/dist/components/rel-calendar/rel-calendar.ts +86 -18
- package/dist/components/rel-carousel/rel-carousel.ts +45 -2
- package/dist/components/rel-checkbox/rel-checkbox.ts +4 -1
- package/dist/components/rel-chip/rel-chip.ts +59 -19
- package/dist/components/rel-date-picker/date-parse.test.ts +116 -0
- package/dist/components/rel-date-picker/date-parse.ts +178 -0
- package/dist/components/rel-date-picker/rel-date-picker.ts +675 -93
- package/dist/components/rel-drawer/rel-drawer.ts +28 -61
- package/dist/components/rel-menu/rel-menu.ts +130 -15
- package/dist/components/rel-menubar/rel-menubar.ts +221 -63
- package/dist/components/rel-nav-menu/rel-nav-menu.ts +39 -3
- package/dist/components/rel-otp/rel-otp.ts +14 -4
- package/dist/components/rel-pagination/rel-pagination.ts +13 -0
- package/dist/components/rel-popover/rel-popover.ts +64 -5
- package/dist/components/rel-progress/rel-progress.ts +13 -4
- package/dist/components/rel-radio/README.md +6 -3
- package/dist/components/rel-radio/rel-radio.ts +236 -60
- package/dist/components/rel-range-picker/rel-range-picker.ts +581 -91
- package/dist/components/rel-resizable/rel-resizable-group.ts +20 -0
- package/dist/components/rel-segmented-button/rel-segmented-button.ts +55 -13
- package/dist/components/rel-select/rel-select.ts +203 -24
- package/dist/components/rel-sheet/rel-sheet.ts +184 -18
- package/dist/components/rel-sidebar/rel-sidebar.ts +50 -40
- package/dist/components/rel-skeleton/rel-skeleton.ts +9 -0
- package/dist/components/rel-slider/rel-slider.ts +6 -3
- package/dist/components/rel-snackbar/rel-snackbar.ts +20 -16
- package/dist/components/rel-stepper/rel-stepper.ts +47 -2
- package/dist/components/rel-switch/rel-switch.ts +3 -1
- package/dist/components/rel-tab/rel-tab.ts +32 -7
- package/dist/components/rel-textfield/rel-textfield.ts +263 -75
- package/dist/components/rel-time-picker/rel-time-picker.ts +749 -261
- package/dist/components/rel-time-picker/time-parse.test.ts +67 -0
- package/dist/components/rel-time-picker/time-parse.ts +85 -0
- package/dist/components/rel-toast/rel-toast.ts +4 -2
- package/dist/components/rel-tooltip/README.md +13 -5
- package/dist/components/rel-tooltip/rel-tooltip.ts +33 -0
- package/dist/components/rel-topbar/rel-topbar-actions.ts +1 -1
- package/dist/components/rel-topbar/rel-topbar-brand.ts +1 -1
- package/dist/components/rel-topbar/rel-topbar-dropdown-item.ts +1 -1
- package/dist/components/rel-topbar/rel-topbar-dropdown.ts +1 -1
- package/dist/components/rel-topbar/rel-topbar-item.ts +318 -319
- package/dist/components/rel-topbar/rel-topbar-mobile-panel.ts +1 -1
- package/dist/components/rel-topbar/rel-topbar-profile.ts +224 -224
- package/dist/components/rel-topbar/rel-topbar-utilities.ts +1 -1
- package/dist/components/rel-topbar/rel-topbar.ts +440 -440
- package/dist/components/rel-upload/rel-upload.ts +25 -0
- package/dist/index.d.mts +461 -23
- package/dist/index.d.ts +461 -23
- package/dist/index.js +3906 -807
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +4143 -1055
- package/dist/index.mjs.map +1 -1
- package/package.json +2 -2
|
@@ -3,6 +3,7 @@ import { customElement, property, state, query } from "lit/decorators.js";
|
|
|
3
3
|
import "@reliability-design/icons/rel-icon";
|
|
4
4
|
import "../rel-alert/rel-alert";
|
|
5
5
|
import "../rel-progress/rel-progress";
|
|
6
|
+
import { announce } from "../../utils/announce";
|
|
6
7
|
|
|
7
8
|
/** Per-file lifecycle state. Mirrors the Figma "Upload File Row" variants 1:1. */
|
|
8
9
|
export type UploadStatus = "ready" | "uploading" | "success" | "error";
|
|
@@ -143,6 +144,8 @@ export class RelUpload extends LitElement {
|
|
|
143
144
|
private aborter?: AbortController;
|
|
144
145
|
private delayTimer?: ReturnType<typeof setTimeout>;
|
|
145
146
|
private lastSignature = "";
|
|
147
|
+
private lastHeading = "";
|
|
148
|
+
private lastAlertText = "";
|
|
146
149
|
|
|
147
150
|
static styles = css`
|
|
148
151
|
:host {
|
|
@@ -601,6 +604,13 @@ export class RelUpload extends LitElement {
|
|
|
601
604
|
if (rejected.length) this.emit("rel-invalid", { rejected });
|
|
602
605
|
this.emit("rel-files-added", { added, rejected });
|
|
603
606
|
this.emit("rel-change", { files: this.files });
|
|
607
|
+
const accepted = added.length - rejected.length;
|
|
608
|
+
if (accepted > 0) {
|
|
609
|
+
announce(`${accepted} file${accepted === 1 ? "" : "s"} added`);
|
|
610
|
+
}
|
|
611
|
+
if (rejected.length > 0) {
|
|
612
|
+
announce(`${rejected.length} file${rejected.length === 1 ? "" : "s"} rejected`, "assertive");
|
|
613
|
+
}
|
|
604
614
|
this.notify();
|
|
605
615
|
}
|
|
606
616
|
|
|
@@ -727,6 +737,7 @@ export class RelUpload extends LitElement {
|
|
|
727
737
|
this.files = this.files.filter((f) => f.id !== id);
|
|
728
738
|
this.emit("rel-remove", { id, file: target?.file });
|
|
729
739
|
this.emit("rel-change", { files: this.files });
|
|
740
|
+
if (target) announce(`${target.name} removed`);
|
|
730
741
|
this.notify();
|
|
731
742
|
}
|
|
732
743
|
|
|
@@ -738,6 +749,7 @@ export class RelUpload extends LitElement {
|
|
|
738
749
|
this.delayed = false;
|
|
739
750
|
if (this.inputEl) this.inputEl.value = "";
|
|
740
751
|
this.emit("rel-change", { files: this.files });
|
|
752
|
+
announce("File list cleared");
|
|
741
753
|
this.notify();
|
|
742
754
|
}
|
|
743
755
|
|
|
@@ -803,6 +815,19 @@ export class RelUpload extends LitElement {
|
|
|
803
815
|
|
|
804
816
|
updated() {
|
|
805
817
|
this.notify();
|
|
818
|
+
const heading = this.files.length ? this.listHeading : "";
|
|
819
|
+
if (heading !== this.lastHeading) {
|
|
820
|
+
this.lastHeading = heading;
|
|
821
|
+
if (heading) {
|
|
822
|
+
announce(heading, this.phase === "failed" ? "assertive" : "polite");
|
|
823
|
+
}
|
|
824
|
+
}
|
|
825
|
+
const alert = this.alertContent;
|
|
826
|
+
const alertText = alert ? `${alert.message1}. ${alert.message2}` : "";
|
|
827
|
+
if (alertText !== this.lastAlertText) {
|
|
828
|
+
this.lastAlertText = alertText;
|
|
829
|
+
if (alertText) announce(alertText, "assertive");
|
|
830
|
+
}
|
|
806
831
|
}
|
|
807
832
|
|
|
808
833
|
// ── render ────────────────────────────────────────────────────────────────
|