@oicl/openbridge-webcomponents 2.1.0-next.1 → 2.1.0-next.3

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.
Files changed (59) hide show
  1. package/README.md +1 -0
  2. package/bundle/openbridge-webcomponents.bundle.js +390 -301
  3. package/bundle/openbridge-webcomponents.bundle.js.map +1 -1
  4. package/custom-elements.json +979 -94
  5. package/dist/automation/valve-analoge-two-way-icon/valve-analog-two-way-icon.d.ts +25 -1
  6. package/dist/automation/valve-analoge-two-way-icon/valve-analog-two-way-icon.d.ts.map +1 -1
  7. package/dist/automation/valve-analoge-two-way-icon/valve-analog-two-way-icon.js +39 -58
  8. package/dist/automation/valve-analoge-two-way-icon/valve-analog-two-way-icon.js.map +1 -1
  9. package/dist/building-blocks/alert-list/alert-list-base.d.ts +60 -0
  10. package/dist/building-blocks/alert-list/alert-list-base.d.ts.map +1 -0
  11. package/dist/building-blocks/alert-list/alert-list-base.js +191 -0
  12. package/dist/building-blocks/alert-list/alert-list-base.js.map +1 -0
  13. package/dist/building-blocks/alert-list/alert-list.css.js.map +1 -1
  14. package/dist/building-blocks/alert-list/alert-list.d.ts +13 -26
  15. package/dist/building-blocks/alert-list/alert-list.d.ts.map +1 -1
  16. package/dist/building-blocks/alert-list/alert-list.js +7 -142
  17. package/dist/building-blocks/alert-list/alert-list.js.map +1 -1
  18. package/dist/components/alert-icon/alert-icon.d.ts.map +1 -1
  19. package/dist/components/alert-icon/alert-icon.js +6 -5
  20. package/dist/components/alert-icon/alert-icon.js.map +1 -1
  21. package/dist/components/alert-list-details/alert-list-details.css.js +4 -1
  22. package/dist/components/alert-list-details/alert-list-details.css.js.map +1 -1
  23. package/dist/components/alert-menu/alert-menu.css.js +3 -42
  24. package/dist/components/alert-menu/alert-menu.css.js.map +1 -1
  25. package/dist/components/alert-menu/alert-menu.d.ts +28 -6
  26. package/dist/components/alert-menu/alert-menu.d.ts.map +1 -1
  27. package/dist/components/alert-menu/alert-menu.js +81 -60
  28. package/dist/components/alert-menu/alert-menu.js.map +1 -1
  29. package/dist/components/alert-menu-item/alert-menu-item.d.ts +16 -6
  30. package/dist/components/alert-menu-item/alert-menu-item.d.ts.map +1 -1
  31. package/dist/components/alert-menu-item/alert-menu-item.js +11 -2
  32. package/dist/components/alert-menu-item/alert-menu-item.js.map +1 -1
  33. package/dist/components/number-input-field/number-input-field.css.js +8 -2
  34. package/dist/components/number-input-field/number-input-field.css.js.map +1 -1
  35. package/dist/components/number-input-field/number-input-field.d.ts +15 -1
  36. package/dist/components/number-input-field/number-input-field.d.ts.map +1 -1
  37. package/dist/components/number-input-field/number-input-field.js +38 -44
  38. package/dist/components/number-input-field/number-input-field.js.map +1 -1
  39. package/dist/components/textbox/textbox.css.js +3 -9
  40. package/dist/components/textbox/textbox.css.js.map +1 -1
  41. package/dist/components/textbox/textbox.d.ts +3 -0
  42. package/dist/components/textbox/textbox.d.ts.map +1 -1
  43. package/dist/components/textbox/textbox.js.map +1 -1
  44. package/dist/generated/locales/es-419.d.ts +1 -1
  45. package/dist/generated/locales/es-419.js +1 -1
  46. package/dist/generated/locales/es-419.js.map +1 -1
  47. package/dist/navigation-instruments/readout-list-item/readout-list-item.css.js +2 -1
  48. package/dist/navigation-instruments/readout-list-item/readout-list-item.css.js.map +1 -1
  49. package/dist/pages/alert-detail-page/alert-detail-page.js +1 -1
  50. package/dist/pages/alert-detail-page/alert-detail-page.js.map +1 -1
  51. package/dist/pages/alert-list-page-small/alert-list-page-small-base.d.ts +63 -0
  52. package/dist/pages/alert-list-page-small/alert-list-page-small-base.d.ts.map +1 -0
  53. package/dist/pages/alert-list-page-small/alert-list-page-small-base.js +126 -0
  54. package/dist/pages/alert-list-page-small/alert-list-page-small-base.js.map +1 -0
  55. package/dist/pages/alert-list-page-small/alert-list-page-small.d.ts +12 -15
  56. package/dist/pages/alert-list-page-small/alert-list-page-small.d.ts.map +1 -1
  57. package/dist/pages/alert-list-page-small/alert-list-page-small.js +41 -92
  58. package/dist/pages/alert-list-page-small/alert-list-page-small.js.map +1 -1
  59. package/package.json +1 -1
@@ -0,0 +1,63 @@
1
+ import { CSSResultGroup, LitElement, TemplateResult, nothing } from 'lit';
2
+ import '../../components/icon-button/icon-button.js';
3
+ import '../../components/button/button.js';
4
+ import '../../components/dropdown-button/dropdown-button.js';
5
+ import '../../icons/icon-silence-iec.js';
6
+ /** One entry of the mode dropdown. */
7
+ export interface AlertListPageMode {
8
+ value: string;
9
+ label: string;
10
+ }
11
+ /**
12
+ * `ObcAlertListPageSmallBase` – Compact alert list page: a list of alerts over a
13
+ * bar with a mode dropdown, a silence button and "ACK visible".
14
+ *
15
+ * Not registered as an element: the subclasses supply the list and the
16
+ * modes. `obc-alert-list-page-small` renders `obc-alert-list-details`.
17
+ *
18
+ * ### Features
19
+ * - **Modes:** the dropdown offers `modes` and shows `mode`; picking one calls
20
+ * `selectMode()`.
21
+ * - **ACK visible:** enabled while `canAckAll` holds; a click reports the
22
+ * alerts `visibleAlerts()` returns, and the mode, in `ack-all-visible-click`.
23
+ * - **Silence:** the icon button fires `silence-click`.
24
+ *
25
+ * The base holds no alerts: each page declares `alerts` in the alert type it
26
+ * lists.
27
+ *
28
+ * @property hasShelved - Whether the dropdown offers the shelved alerts.
29
+ * @property showTime - Whether the list shows when each alert was raised.
30
+ * @property timeFormatter - Formats the time the list shows.
31
+ * @availableWhen timeFormatter showTime==true
32
+ */
33
+ export declare class ObcAlertListPageSmallBase extends LitElement {
34
+ /** Whether the dropdown offers the shelved alerts. */
35
+ hasShelved: boolean;
36
+ /** Whether the list shows when each alert was raised. */
37
+ showTime: boolean;
38
+ /**
39
+ * Formats the time the list shows.
40
+ *
41
+ * Available when `showTime==true`.
42
+ */
43
+ timeFormatter: (time: Date) => string;
44
+ /** The dropdown's options, in order. */
45
+ protected get modes(): AlertListPageMode[];
46
+ /** The mode the list filters by and the dropdown shows. */
47
+ protected get mode(): string;
48
+ protected selectMode(_mode: string): void;
49
+ /** Whether an alert the list shows in `mode` can still be acknowledged. */
50
+ protected get canAckAll(): boolean;
51
+ /** Whether the page offers "ACK visible" at all; `canAckAll` enables it. */
52
+ protected get offersAckAll(): boolean;
53
+ /** The alerts in view, which "ACK visible" reports. */
54
+ protected visibleAlerts(): unknown[];
55
+ protected renderList(): TemplateResult | typeof nothing;
56
+ protected dispatchAckClick(alert: unknown): void;
57
+ protected dispatchRowClick(alert: unknown): void;
58
+ private handleAckAllVisibleClick;
59
+ private onModeSelect;
60
+ render(): TemplateResult<1>;
61
+ static styles: CSSResultGroup;
62
+ }
63
+ //# sourceMappingURL=alert-list-page-small-base.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"alert-list-page-small-base.d.ts","sourceRoot":"","sources":["../../../src/pages/alert-list-page-small/alert-list-page-small-base.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,UAAU,EACV,cAAc,EAEd,OAAO,EAER,MAAM,KAAK,CAAC;AAIb,OAAO,6CAA6C,CAAC;AACrD,OAAO,mCAAmC,CAAC;AAE3C,OAAO,qDAAqD,CAAC;AAE7D,OAAO,iCAAiC,CAAC;AAEzC,sCAAsC;AACtC,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,qBAAa,yBAA0B,SAAQ,UAAU;IAC5B,UAAU,EAAE,OAAO,CAAS;IAC5B,QAAQ,EAAE,OAAO,CAAS;IACvB,aAAa,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,MAAM,CAEV;IAEzD,wCAAwC;IACxC,SAAS,KAAK,KAAK,IAAI,iBAAiB,EAAE,CAEzC;IAED,2DAA2D;IAC3D,SAAS,KAAK,IAAI,IAAI,MAAM,CAE3B;IAED,SAAS,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM;IAElC,2EAA2E;IAC3E,SAAS,KAAK,SAAS,IAAI,OAAO,CAEjC;IAED,4EAA4E;IAC5E,SAAS,KAAK,YAAY,IAAI,OAAO,CAEpC;IAED,uDAAuD;IACvD,SAAS,CAAC,aAAa,IAAI,OAAO,EAAE;IAIpC,SAAS,CAAC,UAAU,IAAI,cAAc,GAAG,OAAO,OAAO;IAIvD,SAAS,CAAC,gBAAgB,CAAC,KAAK,EAAE,OAAO;IAIzC,SAAS,CAAC,gBAAgB,CAAC,KAAK,EAAE,OAAO;IAIzC,OAAO,CAAC,wBAAwB;IAWhC,OAAO,CAAC,YAAY;IAIX,MAAM;IA2Cf,OAAgB,MAAM,EAAE,cAAc,CAA2B;CAClE"}
@@ -0,0 +1,126 @@
1
+ import __decorate from "../../_virtual/_@oxc-project_runtime@0.150.0/helpers/esm/decorate.js";
2
+ import "../../icons/icon-silence-iec.js";
3
+ import "../../components/icon-button/icon-button.js";
4
+ import { ButtonVariant } from "../../components/button/button.js";
5
+ import "../../components/dropdown-button/dropdown-button.js";
6
+ import alert_list_page_small_default from "./alert-list-page-small.css.js";
7
+ import { msg } from "@lit/localize";
8
+ import { LitElement, html, nothing, unsafeCSS } from "lit";
9
+ import { property } from "lit/decorators.js";
10
+ //#region src/pages/alert-list-page-small/alert-list-page-small-base.ts
11
+ /**
12
+ * `ObcAlertListPageSmallBase` – Compact alert list page: a list of alerts over a
13
+ * bar with a mode dropdown, a silence button and "ACK visible".
14
+ *
15
+ * Not registered as an element: the subclasses supply the list and the
16
+ * modes. `obc-alert-list-page-small` renders `obc-alert-list-details`.
17
+ *
18
+ * ### Features
19
+ * - **Modes:** the dropdown offers `modes` and shows `mode`; picking one calls
20
+ * `selectMode()`.
21
+ * - **ACK visible:** enabled while `canAckAll` holds; a click reports the
22
+ * alerts `visibleAlerts()` returns, and the mode, in `ack-all-visible-click`.
23
+ * - **Silence:** the icon button fires `silence-click`.
24
+ *
25
+ * The base holds no alerts: each page declares `alerts` in the alert type it
26
+ * lists.
27
+ *
28
+ * @property hasShelved - Whether the dropdown offers the shelved alerts.
29
+ * @property showTime - Whether the list shows when each alert was raised.
30
+ * @property timeFormatter - Formats the time the list shows.
31
+ * @availableWhen timeFormatter showTime==true
32
+ */
33
+ var ObcAlertListPageSmallBase = class extends LitElement {
34
+ constructor(..._args) {
35
+ super(..._args);
36
+ this.hasShelved = false;
37
+ this.showTime = false;
38
+ this.timeFormatter = (time) => time.toLocaleTimeString(void 0, { hour12: false });
39
+ }
40
+ /** The dropdown's options, in order. */
41
+ get modes() {
42
+ return [];
43
+ }
44
+ /** The mode the list filters by and the dropdown shows. */
45
+ get mode() {
46
+ return "";
47
+ }
48
+ selectMode(_mode) {}
49
+ /** Whether an alert the list shows in `mode` can still be acknowledged. */
50
+ get canAckAll() {
51
+ return false;
52
+ }
53
+ /** Whether the page offers "ACK visible" at all; `canAckAll` enables it. */
54
+ get offersAckAll() {
55
+ return true;
56
+ }
57
+ /** The alerts in view, which "ACK visible" reports. */
58
+ visibleAlerts() {
59
+ return [];
60
+ }
61
+ renderList() {
62
+ return nothing;
63
+ }
64
+ dispatchAckClick(alert) {
65
+ this.dispatchEvent(new CustomEvent("ack-click", { detail: { alert } }));
66
+ }
67
+ dispatchRowClick(alert) {
68
+ this.dispatchEvent(new CustomEvent("row-click", { detail: { alert } }));
69
+ }
70
+ handleAckAllVisibleClick() {
71
+ this.dispatchEvent(new CustomEvent("ack-all-visible-click", { detail: {
72
+ alerts: this.visibleAlerts(),
73
+ mode: this.mode
74
+ } }));
75
+ }
76
+ onModeSelect(e) {
77
+ this.selectMode(e.detail.value);
78
+ }
79
+ render() {
80
+ return html`
81
+ <div class="wrapper">
82
+ ${this.renderList()}
83
+ <div class="action">
84
+ <div class="btn-group">
85
+ <obc-dropdown-button
86
+ .value=${this.mode}
87
+ @change=${this.onModeSelect}
88
+ .options=${this.modes}
89
+ >
90
+ </obc-dropdown-button>
91
+ </div>
92
+
93
+ <div class="btn-group">
94
+ <obc-icon-button
95
+ variant="normal"
96
+ @click=${() => this.dispatchEvent(new CustomEvent("silence-click"))}
97
+ aria-label=${msg("Silence")}
98
+ >
99
+ <obi-silence-iec></obi-silence-iec>
100
+ </obc-icon-button>
101
+ ${this.offersAckAll ? html`<obc-button
102
+ .variant=${ButtonVariant.raised}
103
+ .disabled=${!this.canAckAll}
104
+ fullWidth
105
+ class="btn"
106
+ data-testid="ack-all-visible-button"
107
+ @click=${() => this.handleAckAllVisibleClick()}
108
+ >
109
+ ${msg("ACK visible")}
110
+ </obc-button>` : nothing}
111
+ </div>
112
+ </div>
113
+ </div>
114
+ `;
115
+ }
116
+ static {
117
+ this.styles = unsafeCSS(alert_list_page_small_default);
118
+ }
119
+ };
120
+ __decorate([property({ type: Boolean })], ObcAlertListPageSmallBase.prototype, "hasShelved", void 0);
121
+ __decorate([property({ type: Boolean })], ObcAlertListPageSmallBase.prototype, "showTime", void 0);
122
+ __decorate([property({ attribute: false })], ObcAlertListPageSmallBase.prototype, "timeFormatter", void 0);
123
+ //#endregion
124
+ export { ObcAlertListPageSmallBase };
125
+
126
+ //# sourceMappingURL=alert-list-page-small-base.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"alert-list-page-small-base.js","names":[],"sources":["../../../src/pages/alert-list-page-small/alert-list-page-small-base.ts"],"sourcesContent":["import {\n CSSResultGroup,\n LitElement,\n TemplateResult,\n html,\n nothing,\n unsafeCSS,\n} from 'lit';\nimport {property} from 'lit/decorators.js';\nimport {msg} from '@lit/localize';\nimport compentStyle from './alert-list-page-small.css?inline';\nimport '../../components/icon-button/icon-button.js';\nimport '../../components/button/button.js';\nimport {ButtonVariant} from '../../components/button/button.js';\nimport '../../components/dropdown-button/dropdown-button.js';\nimport {ObcDropdownButtonChangeEvent} from '../../components/dropdown-button/dropdown-button.js';\nimport '../../icons/icon-silence-iec.js';\n\n/** One entry of the mode dropdown. */\nexport interface AlertListPageMode {\n value: string;\n label: string;\n}\n\n/**\n * `ObcAlertListPageSmallBase` – Compact alert list page: a list of alerts over a\n * bar with a mode dropdown, a silence button and \"ACK visible\".\n *\n * Not registered as an element: the subclasses supply the list and the\n * modes. `obc-alert-list-page-small` renders `obc-alert-list-details`.\n *\n * ### Features\n * - **Modes:** the dropdown offers `modes` and shows `mode`; picking one calls\n * `selectMode()`.\n * - **ACK visible:** enabled while `canAckAll` holds; a click reports the\n * alerts `visibleAlerts()` returns, and the mode, in `ack-all-visible-click`.\n * - **Silence:** the icon button fires `silence-click`.\n *\n * The base holds no alerts: each page declares `alerts` in the alert type it\n * lists.\n *\n * @property hasShelved - Whether the dropdown offers the shelved alerts.\n * @property showTime - Whether the list shows when each alert was raised.\n * @property timeFormatter - Formats the time the list shows.\n * @availableWhen timeFormatter showTime==true\n */\nexport class ObcAlertListPageSmallBase extends LitElement {\n @property({type: Boolean}) hasShelved: boolean = false;\n @property({type: Boolean}) showTime: boolean = false;\n @property({attribute: false}) timeFormatter: (time: Date) => string = (\n time: Date\n ) => time.toLocaleTimeString(undefined, {hour12: false});\n\n /** The dropdown's options, in order. */\n protected get modes(): AlertListPageMode[] {\n return [];\n }\n\n /** The mode the list filters by and the dropdown shows. */\n protected get mode(): string {\n return '';\n }\n\n protected selectMode(_mode: string) {}\n\n /** Whether an alert the list shows in `mode` can still be acknowledged. */\n protected get canAckAll(): boolean {\n return false;\n }\n\n /** Whether the page offers \"ACK visible\" at all; `canAckAll` enables it. */\n protected get offersAckAll(): boolean {\n return true;\n }\n\n /** The alerts in view, which \"ACK visible\" reports. */\n protected visibleAlerts(): unknown[] {\n return [];\n }\n\n protected renderList(): TemplateResult | typeof nothing {\n return nothing;\n }\n\n protected dispatchAckClick(alert: unknown) {\n this.dispatchEvent(new CustomEvent('ack-click', {detail: {alert}}));\n }\n\n protected dispatchRowClick(alert: unknown) {\n this.dispatchEvent(new CustomEvent('row-click', {detail: {alert}}));\n }\n\n private handleAckAllVisibleClick() {\n this.dispatchEvent(\n new CustomEvent('ack-all-visible-click', {\n detail: {\n alerts: this.visibleAlerts(),\n mode: this.mode,\n },\n })\n );\n }\n\n private onModeSelect(e: ObcDropdownButtonChangeEvent) {\n this.selectMode(e.detail.value as string);\n }\n\n override render() {\n return html`\n <div class=\"wrapper\">\n ${this.renderList()}\n <div class=\"action\">\n <div class=\"btn-group\">\n <obc-dropdown-button\n .value=${this.mode}\n @change=${this.onModeSelect}\n .options=${this.modes}\n >\n </obc-dropdown-button>\n </div>\n\n <div class=\"btn-group\">\n <obc-icon-button\n variant=\"normal\"\n @click=${() =>\n this.dispatchEvent(new CustomEvent('silence-click'))}\n aria-label=${msg('Silence')}\n >\n <obi-silence-iec></obi-silence-iec>\n </obc-icon-button>\n ${\n this.offersAckAll\n ? html`<obc-button\n .variant=${ButtonVariant.raised}\n .disabled=${!this.canAckAll}\n fullWidth\n class=\"btn\"\n data-testid=\"ack-all-visible-button\"\n @click=${() => this.handleAckAllVisibleClick()}\n >\n ${msg('ACK visible')}\n </obc-button>`\n : nothing\n }\n </div>\n </div>\n </div>\n `;\n }\n\n static override styles: CSSResultGroup = unsafeCSS(compentStyle);\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA8CA,IAAa,4BAAb,cAA+C,WAAW;;;EACP,KAAA,aAAA;EACF,KAAA,WAAA;EAE7C,KAAA,iBAAA,SACG,KAAK,mBAAmB,KAAA,GAAW,EAAC,QAAQ,MAAK,CAAC;;;CAGvD,IAAc,QAA6B;EACzC,OAAO,CAAC;CACV;;CAGA,IAAc,OAAe;EAC3B,OAAO;CACT;CAEA,WAAqB,OAAe,CAAC;;CAGrC,IAAc,YAAqB;EACjC,OAAO;CACT;;CAGA,IAAc,eAAwB;EACpC,OAAO;CACT;;CAGA,gBAAqC;EACnC,OAAO,CAAC;CACV;CAEA,aAAwD;EACtD,OAAO;CACT;CAEA,iBAA2B,OAAgB;EACzC,KAAK,cAAc,IAAI,YAAY,aAAa,EAAC,QAAQ,EAAC,MAAK,EAAC,CAAC,CAAC;CACpE;CAEA,iBAA2B,OAAgB;EACzC,KAAK,cAAc,IAAI,YAAY,aAAa,EAAC,QAAQ,EAAC,MAAK,EAAC,CAAC,CAAC;CACpE;CAEA,2BAAmC;EACjC,KAAK,cACH,IAAI,YAAY,yBAAyB,EACvC,QAAQ;GACN,QAAQ,KAAK,cAAc;GAC3B,MAAM,KAAK;EACb,EACF,CAAC,CACH;CACF;CAEA,aAAqB,GAAiC;EACpD,KAAK,WAAW,EAAE,OAAO,KAAe;CAC1C;CAEA,SAAkB;EAChB,OAAO,IAAI;;UAEL,KAAK,WAAW,EAAE;;;;uBAIL,KAAK,KAAK;wBACT,KAAK,aAAa;yBACjB,KAAK,MAAM;;;;;;;;6BASpB,KAAK,cAAc,IAAI,YAAY,eAAe,CAAC,EAAE;2BAC1C,IAAI,SAAS,EAAE;;;;cAK5B,KAAK,eACD,IAAI;+BACS,cAAc,OAAO;gCACpB,CAAC,KAAK,UAAU;;;;mCAIb,KAAK,yBAAyB,EAAE;;sBAE7C,IAAI,aAAa,EAAE;mCAEvB,QACL;;;;;CAKX;;EAEyC,KAAA,SAAA,UAAU,6BAAY;;AACjE;AAxGG,WAAA,CAAA,SAAS,EAAC,MAAM,QAAO,CAAC,CAAA,GAAA,0BAAA,WAAA,cAAA,KAAA,CAAA;AACxB,WAAA,CAAA,SAAS,EAAC,MAAM,QAAO,CAAC,CAAA,GAAA,0BAAA,WAAA,YAAA,KAAA,CAAA;AACxB,WAAA,CAAA,SAAS,EAAC,WAAW,MAAK,CAAC,CAAA,GAAA,0BAAA,WAAA,iBAAA,KAAA,CAAA"}
@@ -1,13 +1,10 @@
1
- import { LitElement, PropertyValues } from 'lit';
1
+ import { PropertyValues } from 'lit';
2
+ import { ObcAlertListPageSmallBase, AlertListPageMode } from './alert-list-page-small-base.js';
2
3
  import { Alert } from '../../types.js';
3
4
  import '../../building-blocks/alert-list/alert-list.js';
4
- import '../../components/icon-button/icon-button.js';
5
- import '../../components/button/button.js';
6
- import '../../icons/icon-silence-iec.js';
7
5
  import '../../icons/icon-alerts.js';
8
6
  import '../../icons/icon-alerts-shelf.js';
9
7
  import '../../icons/icon-unacknowledged.js';
10
- import '../../components/dropdown-button/dropdown-button.js';
11
8
  import '../../icons/icon-alarm-noack-iec.js';
12
9
  import '../../icons/icon-warning-noack-iec.js';
13
10
  import '../../components/alert-list-details/alert-list-details.js';
@@ -27,28 +24,28 @@ export type ObcRowClickEvent = CustomEvent<{
27
24
  alert: Alert;
28
25
  }>;
29
26
  /**
27
+ * @property alerts - Alerts to list.
30
28
  * @fires {ObcAlertListPageAckAllClickEvent} ack-all-visible-click - Fired when the user clicks the "ACK visible" button.
31
29
  * @fires {ObcAckClickEvent} ack-click - Fired when the user clicks the "ACK" button.
32
30
  * @fires {ObcRowClickEvent} row-click - Fired when the user clicks a row.
33
31
  * @fires {CustomEvent<void>} silence-click - Fired when the user clicks the "Silence" button.
34
32
  * @beta
35
33
  */
36
- export declare class ObcAlertListPageSmall extends LitElement {
37
- hasShelved: boolean;
38
- selectedMode: AlertListMode;
34
+ export declare class ObcAlertListPageSmall extends ObcAlertListPageSmallBase {
35
+ /** Alerts to list. */
39
36
  alerts: Alert[];
40
- showTime: boolean;
41
- timeFormatter: (time: Date) => string;
37
+ selectedMode: AlertListMode;
42
38
  private _mode;
43
39
  private alertList;
44
40
  willUpdate(changedProperties: PropertyValues): void;
45
- private handleAckAllVisibleClick;
46
- private onModeSelect;
47
- private get metadata();
41
+ protected get modes(): AlertListPageMode[];
42
+ protected get mode(): AlertListMode;
43
+ protected selectMode(mode: string): void;
44
+ protected get canAckAll(): boolean;
45
+ protected visibleAlerts(): Alert[];
48
46
  private onAckClick;
49
47
  private onRowClick;
50
- render(): import('lit-html').TemplateResult<1>;
51
- static styles: import('lit').CSSResult;
48
+ protected renderList(): import('lit-html').TemplateResult<1>;
52
49
  }
53
50
  declare global {
54
51
  interface HTMLElementTagNameMap {
@@ -1 +1 @@
1
- {"version":3,"file":"alert-list-page-small.d.ts","sourceRoot":"","sources":["../../../src/pages/alert-list-page-small/alert-list-page-small.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAE,cAAc,EAAkB,MAAM,KAAK,CAAC;AAKhE,OAAO,gDAAgD,CAAC;AACxD,OAAO,6CAA6C,CAAC;AACrD,OAAO,mCAAmC,CAAC;AAC3C,OAAO,iCAAiC,CAAC;AACzC,OAAO,4BAA4B,CAAC;AACpC,OAAO,kCAAkC,CAAC;AAC1C,OAAO,oCAAoC,CAAC;AAC5C,OAAO,qDAAqD,CAAC;AAE7D,OAAO,qCAAqC,CAAC;AAC7C,OAAO,uCAAuC,CAAC;AAC/C,OAAO,EAAC,KAAK,EAAC,MAAM,gBAAgB,CAAC;AACrC,OAAO,2DAA2D,CAAC;AAQnE,oBAAY,aAAa;IACvB,OAAO,YAAY;IACnB,GAAG,QAAQ;IACX,OAAO,YAAY;CACpB;AAED,MAAM,MAAM,gCAAgC,GAAG,WAAW,CAAC;IACzD,IAAI,EAAE,aAAa,CAAC;IACpB,MAAM,EAAE,KAAK,EAAE,CAAC;CACjB,CAAC,CAAC;AAEH,MAAM,MAAM,gBAAgB,GAAG,WAAW,CAAC;IACzC,KAAK,EAAE,KAAK,CAAC;CACd,CAAC,CAAC;AAEH,MAAM,MAAM,gBAAgB,GAAG,WAAW,CAAC;IACzC,KAAK,EAAE,KAAK,CAAC;CACd,CAAC,CAAC;AAEH;;;;;;GAMG;AACH,qBACa,qBAAsB,SAAQ,UAAU;IACxB,UAAU,EAAE,OAAO,CAAS;IAC7B,YAAY,EAAE,aAAa,CAAqB;IACjD,MAAM,EAAE,KAAK,EAAE,CAAM;IACnB,QAAQ,EAAE,OAAO,CAAS;IACvB,aAAa,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,MAAM,CAEV;IAEhD,OAAO,CAAC,KAAK,CAAoC;IAG1D,OAAO,CAAC,SAAS,CAAuB;IAE/B,UAAU,CAAC,iBAAiB,EAAE,cAAc,GAAG,IAAI;IAS5D,OAAO,CAAC,wBAAwB;IAahC,OAAO,CAAC,YAAY;IAIpB,OAAO,KAAK,QAAQ,GAEnB;IAED,OAAO,CAAC,UAAU;IAUlB,OAAO,CAAC,UAAU;IAQT,MAAM;IAuEf,OAAgB,MAAM,0BAA2B;CAClD;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,2BAA2B,EAAE,qBAAqB,CAAC;KACpD;CACF"}
1
+ {"version":3,"file":"alert-list-page-small.d.ts","sourceRoot":"","sources":["../../../src/pages/alert-list-page-small/alert-list-page-small.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,cAAc,EAAO,MAAM,KAAK,CAAC;AAIzC,OAAO,EACL,yBAAyB,EACzB,KAAK,iBAAiB,EACvB,MAAM,iCAAiC,CAAC;AACzC,OAAO,gDAAgD,CAAC;AACxD,OAAO,4BAA4B,CAAC;AACpC,OAAO,kCAAkC,CAAC;AAC1C,OAAO,oCAAoC,CAAC;AAC5C,OAAO,qCAAqC,CAAC;AAC7C,OAAO,uCAAuC,CAAC;AAC/C,OAAO,EAAC,KAAK,EAAC,MAAM,gBAAgB,CAAC;AACrC,OAAO,2DAA2D,CAAC;AAOnE,oBAAY,aAAa;IACvB,OAAO,YAAY;IACnB,GAAG,QAAQ;IACX,OAAO,YAAY;CACpB;AAED,MAAM,MAAM,gCAAgC,GAAG,WAAW,CAAC;IACzD,IAAI,EAAE,aAAa,CAAC;IACpB,MAAM,EAAE,KAAK,EAAE,CAAC;CACjB,CAAC,CAAC;AAEH,MAAM,MAAM,gBAAgB,GAAG,WAAW,CAAC;IACzC,KAAK,EAAE,KAAK,CAAC;CACd,CAAC,CAAC;AAEH,MAAM,MAAM,gBAAgB,GAAG,WAAW,CAAC;IACzC,KAAK,EAAE,KAAK,CAAC;CACd,CAAC,CAAC;AAEH;;;;;;;GAOG;AACH,qBACa,qBAAsB,SAAQ,yBAAyB;IACzC,MAAM,EAAE,KAAK,EAAE,CAAM;IACpB,YAAY,EAAE,aAAa,CAAqB;IAEjE,OAAO,CAAC,KAAK,CAAoC;IAG1D,OAAO,CAAC,SAAS,CAAuB;IAE/B,UAAU,CAAC,iBAAiB,EAAE,cAAc,GAAG,IAAI;IAS5D,cAAuB,KAAK,IAAI,iBAAiB,EAAE,CASlD;IAED,cAAuB,IAAI,IAAI,aAAa,CAE3C;cAEkB,UAAU,CAAC,IAAI,EAAE,MAAM;IAI1C,cAAuB,SAAS,IAAI,OAAO,CAI1C;cAEkB,aAAa,IAAI,KAAK,EAAE;IAI3C,OAAO,CAAC,UAAU;IAIlB,OAAO,CAAC,UAAU;cAIC,UAAU;CAY9B;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,2BAA2B,EAAE,qBAAqB,CAAC;KACpD;CACF"}
@@ -3,17 +3,13 @@ import __decorate from "../../_virtual/_@oxc-project_runtime@0.150.0/helpers/esm
3
3
  import "../../icons/icon-alarm-noack-iec.js";
4
4
  import "../../icons/icon-alerts-shelf.js";
5
5
  import "../../icons/icon-alerts.js";
6
- import "../../icons/icon-silence-iec.js";
7
6
  import "../../icons/icon-unacknowledged.js";
8
7
  import "../../icons/icon-warning-noack-iec.js";
9
- import "../../components/icon-button/icon-button.js";
10
- import { ButtonVariant } from "../../components/button/button.js";
11
8
  import "../../building-blocks/alert-list/alert-list.js";
12
9
  import { canAckFilter, getAlertListModeData } from "../../components/alert-list-details/alert-list-details.js";
13
- import "../../components/dropdown-button/dropdown-button.js";
14
- import alert_list_page_small_default from "./alert-list-page-small.css.js";
10
+ import { ObcAlertListPageSmallBase } from "./alert-list-page-small-base.js";
15
11
  import { msg } from "@lit/localize";
16
- import { LitElement, html, unsafeCSS } from "lit";
12
+ import { html } from "lit";
17
13
  import { property, query, state } from "lit/decorators.js";
18
14
  //#region src/pages/alert-list-page-small/alert-list-page-small.ts
19
15
  var AlertListMode = /* @__PURE__ */ function(AlertListMode) {
@@ -22,110 +18,63 @@ var AlertListMode = /* @__PURE__ */ function(AlertListMode) {
22
18
  AlertListMode["SHELVED"] = "shelved";
23
19
  return AlertListMode;
24
20
  }({});
25
- var ObcAlertListPageSmall = class ObcAlertListPageSmall extends LitElement {
21
+ var ObcAlertListPageSmall = class ObcAlertListPageSmall extends ObcAlertListPageSmallBase {
26
22
  constructor(..._args) {
27
23
  super(..._args);
28
- this.hasShelved = false;
29
- this.selectedMode = "all";
30
24
  this.alerts = [];
31
- this.showTime = false;
32
- this.timeFormatter = (time) => time.toLocaleTimeString(void 0, { hour12: false });
25
+ this.selectedMode = "all";
33
26
  this._mode = "all";
34
27
  }
35
28
  willUpdate(changedProperties) {
36
29
  if (changedProperties.has("selectedMode") && this._mode !== this.selectedMode) this._mode = this.selectedMode;
37
30
  }
38
- handleAckAllVisibleClick() {
39
- const tabName = this.selectedMode;
40
- const visibleElements = this.alertList.getVisibleAlerts();
41
- this.dispatchEvent(new CustomEvent("ack-all-visible-click", { detail: {
42
- alerts: visibleElements,
43
- mode: tabName
44
- } }));
31
+ get modes() {
32
+ const modes = [{
33
+ value: "all",
34
+ label: msg("All")
35
+ }, {
36
+ value: "unacked",
37
+ label: msg("Unacked")
38
+ }];
39
+ if (this.hasShelved) modes.push({
40
+ value: "shelved",
41
+ label: msg("Shelved")
42
+ });
43
+ return modes;
44
+ }
45
+ get mode() {
46
+ return this._mode;
47
+ }
48
+ selectMode(mode) {
49
+ this._mode = mode;
45
50
  }
46
- onModeSelect(e) {
47
- this._mode = e.detail.value;
51
+ get canAckAll() {
52
+ return this.alerts.some(canAckFilter(getAlertListModeData(this._mode).filter));
48
53
  }
49
- get metadata() {
50
- return getAlertListModeData(this.selectedMode);
54
+ visibleAlerts() {
55
+ return this.alertList.getVisibleAlerts();
51
56
  }
52
57
  onAckClick(e) {
53
- this.dispatchEvent(new CustomEvent("ack-click", { detail: { alert: e.detail.alert } }));
58
+ this.dispatchAckClick(e.detail.alert);
54
59
  }
55
60
  onRowClick(e) {
56
- this.dispatchEvent(new CustomEvent("row-click", { detail: { alert: e.detail.alert } }));
61
+ this.dispatchRowClick(e.detail.alert);
57
62
  }
58
- render() {
59
- const lists = [{
60
- name: "all",
61
- title: msg("All")
62
- }, {
63
- name: "unacked",
64
- title: msg("Unacked")
65
- }];
66
- if (this.hasShelved) lists.push({
67
- name: "shelved",
68
- title: msg("Shelved")
69
- });
70
- const metadata = this.metadata;
71
- const canAckAll = this.alerts.some(canAckFilter(metadata.filter));
72
- return html`
73
- <div class="wrapper">
74
- <obc-alert-list-details
75
- class="alert-list"
76
- .small=${true}
77
- .alerts=${this.alerts}
78
- .selectedMode=${this._mode}
79
- .showTime=${this.showTime}
80
- .timeFormatter=${this.timeFormatter}
81
- @ack-click=${this.onAckClick}
82
- @row-click=${this.onRowClick}
83
- ></obc-alert-list-details>
84
- <div class="action">
85
- <div class="btn-group">
86
- <obc-dropdown-button
87
- .value=${this._mode}
88
- @change=${this.onModeSelect}
89
- .options=${lists.map((v) => ({
90
- value: v.name,
91
- label: v.title
92
- }))}
93
- >
94
- </obc-dropdown-button>
95
- </div>
96
-
97
- <div class="btn-group">
98
- <obc-icon-button
99
- variant="normal"
100
- @click=${() => this.dispatchEvent(new CustomEvent("silence-click"))}
101
- aria-label=${msg("Silence")}
102
- >
103
- <obi-silence-iec></obi-silence-iec>
104
- </obc-icon-button>
105
- <obc-button
106
- .variant=${ButtonVariant.raised}
107
- .disabled=${!canAckAll}
108
- fullWidth
109
- class="btn"
110
- data-testid="ack-all-visible-button"
111
- @click=${() => this.handleAckAllVisibleClick()}
112
- >
113
- ${msg("ACK visible")}
114
- </obc-button>
115
- </div>
116
- </div>
117
- </div>
118
- `;
119
- }
120
- static {
121
- this.styles = unsafeCSS(alert_list_page_small_default);
63
+ renderList() {
64
+ return html`<obc-alert-list-details
65
+ class="alert-list"
66
+ .small=${true}
67
+ .alerts=${this.alerts}
68
+ .selectedMode=${this._mode}
69
+ .showTime=${this.showTime}
70
+ .timeFormatter=${this.timeFormatter}
71
+ @ack-click=${this.onAckClick}
72
+ @row-click=${this.onRowClick}
73
+ ></obc-alert-list-details>`;
122
74
  }
123
75
  };
124
- __decorate([property({ type: Boolean })], ObcAlertListPageSmall.prototype, "hasShelved", void 0);
125
- __decorate([property({ type: String })], ObcAlertListPageSmall.prototype, "selectedMode", void 0);
126
76
  __decorate([property({ type: Array })], ObcAlertListPageSmall.prototype, "alerts", void 0);
127
- __decorate([property({ type: Boolean })], ObcAlertListPageSmall.prototype, "showTime", void 0);
128
- __decorate([property({ attribute: false })], ObcAlertListPageSmall.prototype, "timeFormatter", void 0);
77
+ __decorate([property({ type: String })], ObcAlertListPageSmall.prototype, "selectedMode", void 0);
129
78
  __decorate([state()], ObcAlertListPageSmall.prototype, "_mode", void 0);
130
79
  __decorate([query("obc-alert-list-details")], ObcAlertListPageSmall.prototype, "alertList", void 0);
131
80
  ObcAlertListPageSmall = __decorate([customElement("obc-alert-list-page-small")], ObcAlertListPageSmall);
@@ -1 +1 @@
1
- {"version":3,"file":"alert-list-page-small.js","names":[],"sources":["../../../src/pages/alert-list-page-small/alert-list-page-small.ts"],"sourcesContent":["import {LitElement, PropertyValues, html, unsafeCSS} from 'lit';\nimport {customElement} from '../../decorator.js';\nimport compentStyle from './alert-list-page-small.css?inline';\nimport {msg} from '@lit/localize';\nimport {property, query, state} from 'lit/decorators.js';\nimport '../../building-blocks/alert-list/alert-list.js';\nimport '../../components/icon-button/icon-button.js';\nimport '../../components/button/button.js';\nimport '../../icons/icon-silence-iec.js';\nimport '../../icons/icon-alerts.js';\nimport '../../icons/icon-alerts-shelf.js';\nimport '../../icons/icon-unacknowledged.js';\nimport '../../components/dropdown-button/dropdown-button.js';\nimport {ObcDropdownButtonChangeEvent} from '../../components/dropdown-button/dropdown-button.js';\nimport '../../icons/icon-alarm-noack-iec.js';\nimport '../../icons/icon-warning-noack-iec.js';\nimport {Alert} from '../../types.js';\nimport '../../components/alert-list-details/alert-list-details.js';\nimport {\n canAckFilter,\n getAlertListModeData,\n ObcAlertListDetails,\n} from '../../components/alert-list-details/alert-list-details.js';\nimport {ButtonVariant} from '../../components/button/button.js';\n\nexport enum AlertListMode {\n UNACKED = 'unacked',\n ALL = 'all',\n SHELVED = 'shelved',\n}\n\nexport type ObcAlertListPageAckAllClickEvent = CustomEvent<{\n mode: AlertListMode;\n alerts: Alert[];\n}>;\n\nexport type ObcAckClickEvent = CustomEvent<{\n alert: Alert;\n}>;\n\nexport type ObcRowClickEvent = CustomEvent<{\n alert: Alert;\n}>;\n\n/**\n * @fires {ObcAlertListPageAckAllClickEvent} ack-all-visible-click - Fired when the user clicks the \"ACK visible\" button.\n * @fires {ObcAckClickEvent} ack-click - Fired when the user clicks the \"ACK\" button.\n * @fires {ObcRowClickEvent} row-click - Fired when the user clicks a row.\n * @fires {CustomEvent<void>} silence-click - Fired when the user clicks the \"Silence\" button.\n * @beta\n */\n@customElement('obc-alert-list-page-small')\nexport class ObcAlertListPageSmall extends LitElement {\n @property({type: Boolean}) hasShelved: boolean = false;\n @property({type: String}) selectedMode: AlertListMode = AlertListMode.ALL;\n @property({type: Array}) alerts: Alert[] = [];\n @property({type: Boolean}) showTime: boolean = false;\n @property({attribute: false}) timeFormatter: (time: Date) => string = (\n time: Date\n ) => time.toLocaleTimeString(undefined, {hour12: false});\n\n @state() private _mode: AlertListMode = AlertListMode.ALL;\n\n @query('obc-alert-list-details')\n private alertList!: ObcAlertListDetails;\n\n override willUpdate(changedProperties: PropertyValues): void {\n if (\n changedProperties.has('selectedMode') &&\n this._mode !== this.selectedMode\n ) {\n this._mode = this.selectedMode;\n }\n }\n\n private handleAckAllVisibleClick() {\n const tabName = this.selectedMode;\n const visibleElements = this.alertList.getVisibleAlerts();\n this.dispatchEvent(\n new CustomEvent('ack-all-visible-click', {\n detail: {\n alerts: visibleElements,\n mode: tabName,\n },\n }) as ObcAlertListPageAckAllClickEvent\n );\n }\n\n private onModeSelect(e: ObcDropdownButtonChangeEvent) {\n this._mode = e.detail.value as AlertListMode;\n }\n\n private get metadata() {\n return getAlertListModeData(this.selectedMode);\n }\n\n private onAckClick(e: ObcAckClickEvent) {\n this.dispatchEvent(\n new CustomEvent('ack-click', {\n detail: {\n alert: e.detail.alert,\n },\n }) as ObcAckClickEvent\n );\n }\n\n private onRowClick(e: ObcRowClickEvent) {\n this.dispatchEvent(\n new CustomEvent('row-click', {\n detail: {alert: e.detail.alert},\n }) as ObcRowClickEvent\n );\n }\n\n override render() {\n const lists = [\n {\n name: AlertListMode.ALL,\n title: msg('All'),\n },\n {\n name: AlertListMode.UNACKED,\n title: msg('Unacked'),\n },\n ];\n if (this.hasShelved) {\n lists.push({\n name: AlertListMode.SHELVED,\n title: msg('Shelved'),\n });\n }\n\n const metadata = this.metadata;\n const canAckAll = this.alerts.some(canAckFilter(metadata.filter));\n\n return html`\n <div class=\"wrapper\">\n <obc-alert-list-details\n class=\"alert-list\"\n .small=${true}\n .alerts=${this.alerts}\n .selectedMode=${this._mode}\n .showTime=${this.showTime}\n .timeFormatter=${this.timeFormatter}\n @ack-click=${this.onAckClick}\n @row-click=${this.onRowClick}\n ></obc-alert-list-details>\n <div class=\"action\">\n <div class=\"btn-group\">\n <obc-dropdown-button\n .value=${this._mode}\n @change=${this.onModeSelect}\n .options=${lists.map((v) => ({\n value: v.name,\n label: v.title,\n }))}\n >\n </obc-dropdown-button>\n </div>\n\n <div class=\"btn-group\">\n <obc-icon-button\n variant=\"normal\"\n @click=${() =>\n this.dispatchEvent(new CustomEvent('silence-click'))}\n aria-label=${msg('Silence')}\n >\n <obi-silence-iec></obi-silence-iec>\n </obc-icon-button>\n <obc-button\n .variant=${ButtonVariant.raised}\n .disabled=${!canAckAll}\n fullWidth\n class=\"btn\"\n data-testid=\"ack-all-visible-button\"\n @click=${() => this.handleAckAllVisibleClick()}\n >\n ${msg('ACK visible')}\n </obc-button>\n </div>\n </div>\n </div>\n `;\n }\n\n static override styles = unsafeCSS(compentStyle);\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'obc-alert-list-page-small': ObcAlertListPageSmall;\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAyBA,IAAY,gBAAL,yBAAA,eAAA;CACL,cAAA,aAAA;CACA,cAAA,SAAA;CACA,cAAA,aAAA;;AACF,EAAA,CAAA,CAAA;AAuBO,IAAM,wBAAN,MAAM,8BAA8B,WAAW;;;EACH,KAAA,aAAA;;EAEN,KAAA,SAAA,CAAC;EACG,KAAA,WAAA;EAE7C,KAAA,iBAAA,SACG,KAAK,mBAAmB,KAAA,GAAW,EAAC,QAAQ,MAAK,CAAC;;;CAOvD,WAAoB,mBAAyC;EAC3D,IACE,kBAAkB,IAAI,cAAc,KACpC,KAAK,UAAU,KAAK,cAEpB,KAAK,QAAQ,KAAK;CAEtB;CAEA,2BAAmC;EACjC,MAAM,UAAU,KAAK;EACrB,MAAM,kBAAkB,KAAK,UAAU,iBAAiB;EACxD,KAAK,cACH,IAAI,YAAY,yBAAyB,EACvC,QAAQ;GACN,QAAQ;GACR,MAAM;EACR,EACF,CAAC,CACH;CACF;CAEA,aAAqB,GAAiC;EACpD,KAAK,QAAQ,EAAE,OAAO;CACxB;CAEA,IAAY,WAAW;EACrB,OAAO,qBAAqB,KAAK,YAAY;CAC/C;CAEA,WAAmB,GAAqB;EACtC,KAAK,cACH,IAAI,YAAY,aAAa,EAC3B,QAAQ,EACN,OAAO,EAAE,OAAO,MAClB,EACF,CAAC,CACH;CACF;CAEA,WAAmB,GAAqB;EACtC,KAAK,cACH,IAAI,YAAY,aAAa,EAC3B,QAAQ,EAAC,OAAO,EAAE,OAAO,MAAK,EAChC,CAAC,CACH;CACF;CAEA,SAAkB;EAChB,MAAM,QAAQ,CACZ;GACE,MAAA;GACA,OAAO,IAAI,KAAK;EAClB,GACA;GACE,MAAA;GACA,OAAO,IAAI,SAAS;EACtB,CACF;EACA,IAAI,KAAK,YACP,MAAM,KAAK;GACT,MAAA;GACA,OAAO,IAAI,SAAS;EACtB,CAAC;EAGH,MAAM,WAAW,KAAK;EACtB,MAAM,YAAY,KAAK,OAAO,KAAK,aAAa,SAAS,MAAM,CAAC;EAEhE,OAAO,IAAI;;;;mBAII,KAAK;oBACJ,KAAK,OAAO;0BACN,KAAK,MAAM;sBACf,KAAK,SAAS;2BACT,KAAK,cAAc;uBACvB,KAAK,WAAW;uBAChB,KAAK,WAAW;;;;;uBAKhB,KAAK,MAAM;wBACV,KAAK,aAAa;yBACjB,MAAM,KAAK,OAAO;GAC3B,OAAO,EAAE;GACT,OAAO,EAAE;EACX,EAAE,EAAE;;;;;;;;6BASF,KAAK,cAAc,IAAI,YAAY,eAAe,CAAC,EAAE;2BAC1C,IAAI,SAAS,EAAE;;;;;yBAKjB,cAAc,OAAO;0BACpB,CAAC,UAAU;;;;6BAIR,KAAK,yBAAyB,EAAE;;gBAE7C,IAAI,aAAa,EAAE;;;;;;CAMjC;;EAEyB,KAAA,SAAA,UAAU,6BAAY;;AACjD;AArIG,WAAA,CAAA,SAAS,EAAC,MAAM,QAAO,CAAC,CAAA,GAAA,sBAAA,WAAA,cAAA,KAAA,CAAA;AACxB,WAAA,CAAA,SAAS,EAAC,MAAM,OAAM,CAAC,CAAA,GAAA,sBAAA,WAAA,gBAAA,KAAA,CAAA;AACvB,WAAA,CAAA,SAAS,EAAC,MAAM,MAAK,CAAC,CAAA,GAAA,sBAAA,WAAA,UAAA,KAAA,CAAA;AACtB,WAAA,CAAA,SAAS,EAAC,MAAM,QAAO,CAAC,CAAA,GAAA,sBAAA,WAAA,YAAA,KAAA,CAAA;AACxB,WAAA,CAAA,SAAS,EAAC,WAAW,MAAK,CAAC,CAAA,GAAA,sBAAA,WAAA,iBAAA,KAAA,CAAA;AAI3B,WAAA,CAAA,MAAM,CAAA,GAAA,sBAAA,WAAA,SAAA,KAAA,CAAA;AAEN,WAAA,CAAA,MAAM,wBAAwB,CAAA,GAAA,sBAAA,WAAA,aAAA,KAAA,CAAA;AAZhC,wBAAA,WAAA,CAAA,cAAc,2BAA2B,CAAA,GAAA,qBAAA"}
1
+ {"version":3,"file":"alert-list-page-small.js","names":[],"sources":["../../../src/pages/alert-list-page-small/alert-list-page-small.ts"],"sourcesContent":["import {PropertyValues, html} from 'lit';\nimport {customElement} from '../../decorator.js';\nimport {msg} from '@lit/localize';\nimport {property, query, state} from 'lit/decorators.js';\nimport {\n ObcAlertListPageSmallBase,\n type AlertListPageMode,\n} from './alert-list-page-small-base.js';\nimport '../../building-blocks/alert-list/alert-list.js';\nimport '../../icons/icon-alerts.js';\nimport '../../icons/icon-alerts-shelf.js';\nimport '../../icons/icon-unacknowledged.js';\nimport '../../icons/icon-alarm-noack-iec.js';\nimport '../../icons/icon-warning-noack-iec.js';\nimport {Alert} from '../../types.js';\nimport '../../components/alert-list-details/alert-list-details.js';\nimport {\n canAckFilter,\n getAlertListModeData,\n ObcAlertListDetails,\n} from '../../components/alert-list-details/alert-list-details.js';\n\nexport enum AlertListMode {\n UNACKED = 'unacked',\n ALL = 'all',\n SHELVED = 'shelved',\n}\n\nexport type ObcAlertListPageAckAllClickEvent = CustomEvent<{\n mode: AlertListMode;\n alerts: Alert[];\n}>;\n\nexport type ObcAckClickEvent = CustomEvent<{\n alert: Alert;\n}>;\n\nexport type ObcRowClickEvent = CustomEvent<{\n alert: Alert;\n}>;\n\n/**\n * @property alerts - Alerts to list.\n * @fires {ObcAlertListPageAckAllClickEvent} ack-all-visible-click - Fired when the user clicks the \"ACK visible\" button.\n * @fires {ObcAckClickEvent} ack-click - Fired when the user clicks the \"ACK\" button.\n * @fires {ObcRowClickEvent} row-click - Fired when the user clicks a row.\n * @fires {CustomEvent<void>} silence-click - Fired when the user clicks the \"Silence\" button.\n * @beta\n */\n@customElement('obc-alert-list-page-small')\nexport class ObcAlertListPageSmall extends ObcAlertListPageSmallBase {\n @property({type: Array}) alerts: Alert[] = [];\n @property({type: String}) selectedMode: AlertListMode = AlertListMode.ALL;\n\n @state() private _mode: AlertListMode = AlertListMode.ALL;\n\n @query('obc-alert-list-details')\n private alertList!: ObcAlertListDetails;\n\n override willUpdate(changedProperties: PropertyValues): void {\n if (\n changedProperties.has('selectedMode') &&\n this._mode !== this.selectedMode\n ) {\n this._mode = this.selectedMode;\n }\n }\n\n protected override get modes(): AlertListPageMode[] {\n const modes = [\n {value: AlertListMode.ALL, label: msg('All')},\n {value: AlertListMode.UNACKED, label: msg('Unacked')},\n ];\n if (this.hasShelved) {\n modes.push({value: AlertListMode.SHELVED, label: msg('Shelved')});\n }\n return modes;\n }\n\n protected override get mode(): AlertListMode {\n return this._mode;\n }\n\n protected override selectMode(mode: string) {\n this._mode = mode as AlertListMode;\n }\n\n protected override get canAckAll(): boolean {\n return this.alerts.some(\n canAckFilter(getAlertListModeData(this._mode).filter)\n );\n }\n\n protected override visibleAlerts(): Alert[] {\n return this.alertList.getVisibleAlerts();\n }\n\n private onAckClick(e: ObcAckClickEvent) {\n this.dispatchAckClick(e.detail.alert);\n }\n\n private onRowClick(e: ObcRowClickEvent) {\n this.dispatchRowClick(e.detail.alert);\n }\n\n protected override renderList() {\n return html`<obc-alert-list-details\n class=\"alert-list\"\n .small=${true}\n .alerts=${this.alerts}\n .selectedMode=${this._mode}\n .showTime=${this.showTime}\n .timeFormatter=${this.timeFormatter}\n @ack-click=${this.onAckClick}\n @row-click=${this.onRowClick}\n ></obc-alert-list-details>`;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'obc-alert-list-page-small': ObcAlertListPageSmall;\n }\n}\n"],"mappings":";;;;;;;;;;;;;;AAsBA,IAAY,gBAAL,yBAAA,eAAA;CACL,cAAA,aAAA;CACA,cAAA,SAAA;CACA,cAAA,aAAA;;AACF,EAAA,CAAA,CAAA;AAwBO,IAAM,wBAAN,MAAM,8BAA8B,0BAA0B;;;EACxB,KAAA,SAAA,CAAC;;;;CAQ5C,WAAoB,mBAAyC;EAC3D,IACE,kBAAkB,IAAI,cAAc,KACpC,KAAK,UAAU,KAAK,cAEpB,KAAK,QAAQ,KAAK;CAEtB;CAEA,IAAuB,QAA6B;EAClD,MAAM,QAAQ,CACZ;GAAC,OAAA;GAA0B,OAAO,IAAI,KAAK;EAAC,GAC5C;GAAC,OAAA;GAA8B,OAAO,IAAI,SAAS;EAAC,CACtD;EACA,IAAI,KAAK,YACP,MAAM,KAAK;GAAC,OAAA;GAA8B,OAAO,IAAI,SAAS;EAAC,CAAC;EAElE,OAAO;CACT;CAEA,IAAuB,OAAsB;EAC3C,OAAO,KAAK;CACd;CAEA,WAA8B,MAAc;EAC1C,KAAK,QAAQ;CACf;CAEA,IAAuB,YAAqB;EAC1C,OAAO,KAAK,OAAO,KACjB,aAAa,qBAAqB,KAAK,KAAK,CAAC,CAAC,MAAM,CACtD;CACF;CAEA,gBAA4C;EAC1C,OAAO,KAAK,UAAU,iBAAiB;CACzC;CAEA,WAAmB,GAAqB;EACtC,KAAK,iBAAiB,EAAE,OAAO,KAAK;CACtC;CAEA,WAAmB,GAAqB;EACtC,KAAK,iBAAiB,EAAE,OAAO,KAAK;CACtC;CAEA,aAAgC;EAC9B,OAAO,IAAI;;eAEA,KAAK;gBACJ,KAAK,OAAO;sBACN,KAAK,MAAM;kBACf,KAAK,SAAS;uBACT,KAAK,cAAc;mBACvB,KAAK,WAAW;mBAChB,KAAK,WAAW;;CAEjC;AACF;AAlEG,WAAA,CAAA,SAAS,EAAC,MAAM,MAAK,CAAC,CAAA,GAAA,sBAAA,WAAA,UAAA,KAAA,CAAA;AACtB,WAAA,CAAA,SAAS,EAAC,MAAM,OAAM,CAAC,CAAA,GAAA,sBAAA,WAAA,gBAAA,KAAA,CAAA;AAEvB,WAAA,CAAA,MAAM,CAAA,GAAA,sBAAA,WAAA,SAAA,KAAA,CAAA;AAEN,WAAA,CAAA,MAAM,wBAAwB,CAAA,GAAA,sBAAA,WAAA,aAAA,KAAA,CAAA;AAPhC,wBAAA,WAAA,CAAA,cAAc,2BAA2B,CAAA,GAAA,qBAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@oicl/openbridge-webcomponents",
3
- "version": "2.1.0-next.1",
3
+ "version": "2.1.0-next.3",
4
4
  "type": "module",
5
5
  "repository": {
6
6
  "type": "git",