@oicl/openbridge-webcomponents-full-bundle 2.0.0-next.142 → 2.0.0-next.144
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/bundle/openbridge-webcomponents.bundle.js +131 -30
- package/bundle/openbridge-webcomponents.bundle.js.map +1 -1
- package/custom-elements.json +54 -20
- package/dist/components/alert-list-details/alert-list-details.js +2 -2
- package/dist/components/alert-list-details/alert-list-details.js.map +1 -1
- package/dist/components/app-button/app-button.css.js +56 -0
- package/dist/components/app-button/app-button.css.js.map +1 -1
- package/dist/integration-systems/integration-app-bar/integration-app-bar.css.js +12 -1
- package/dist/integration-systems/integration-app-bar/integration-app-bar.css.js.map +1 -1
- package/dist/integration-systems/integration-app-bar/integration-app-bar.d.ts +2 -2
- package/dist/integration-systems/integration-app-bar/integration-app-bar.d.ts.map +1 -1
- package/dist/integration-systems/integration-app-bar/integration-app-bar.js +1 -21
- package/dist/integration-systems/integration-app-bar/integration-app-bar.js.map +1 -1
- package/dist/navigation-instruments/readout/readout.d.ts +11 -2
- package/dist/navigation-instruments/readout/readout.d.ts.map +1 -1
- package/dist/navigation-instruments/readout/readout.js +18 -0
- package/dist/navigation-instruments/readout/readout.js.map +1 -1
- package/dist/navigation-instruments/readout-list-item/readout-list-item.css.js +25 -0
- package/dist/navigation-instruments/readout-list-item/readout-list-item.css.js.map +1 -1
- package/dist/navigation-instruments/readout-list-item/readout-list-item.d.ts +20 -4
- package/dist/navigation-instruments/readout-list-item/readout-list-item.d.ts.map +1 -1
- package/dist/navigation-instruments/readout-list-item/readout-list-item.js +18 -6
- package/dist/navigation-instruments/readout-list-item/readout-list-item.js.map +1 -1
- package/package.json +1 -1
- package/src/components/alert-list-details/alert-list-details.ts +2 -2
- package/src/components/app-button/app-button.css +2 -0
- package/src/components/app-button/app-button.stories.ts +26 -0
- package/src/integration-systems/integration-app-bar/integration-app-bar-sizing.stories.ts +130 -0
- package/src/integration-systems/integration-app-bar/integration-app-bar.css +11 -1
- package/src/integration-systems/integration-app-bar/integration-app-bar.ts +3 -27
- package/src/navigation-instruments/readout/readout.stories.ts +57 -4
- package/src/navigation-instruments/readout/readout.ts +28 -1
- package/src/navigation-instruments/readout-list/readout-list.stories.ts +62 -2
- package/src/navigation-instruments/readout-list-item/readout-list-item.css +21 -0
- package/src/navigation-instruments/readout-list-item/readout-list-item.stories.ts +56 -3
- package/src/navigation-instruments/readout-list-item/readout-list-item.ts +37 -19
|
@@ -49894,6 +49894,31 @@ obc-readout-block {
|
|
|
49894
49894
|
gap: var(--global-size-spacing-target-padding);
|
|
49895
49895
|
}
|
|
49896
49896
|
|
|
49897
|
+
/* leading-src-inline: the source follows the label on one line, bottom-aligned
|
|
49898
|
+
so the \`xs\` source and the label share a cap baseline. The label↔source gap
|
|
49899
|
+
reuses the tier's content gap (8px, matching Figma 46596:102880). */
|
|
49900
|
+
|
|
49901
|
+
.stacking-leading-src-inline .label-stack {
|
|
49902
|
+
flex-direction: row;
|
|
49903
|
+
align-items: flex-end;
|
|
49904
|
+
}
|
|
49905
|
+
|
|
49906
|
+
.size-small.stacking-leading-src-inline .label-stack {
|
|
49907
|
+
gap: var(
|
|
49908
|
+
--instrument-components-readout-new-list-item-regular-content-container-gap
|
|
49909
|
+
);
|
|
49910
|
+
}
|
|
49911
|
+
|
|
49912
|
+
.size-medium.stacking-leading-src-inline .label-stack {
|
|
49913
|
+
gap: var(
|
|
49914
|
+
--instrument-components-readout-new-list-item-medium-content-container-gap
|
|
49915
|
+
);
|
|
49916
|
+
}
|
|
49917
|
+
|
|
49918
|
+
.size-large.stacking-leading-src-inline .label-stack {
|
|
49919
|
+
gap: var(--instrument-components-readout-new-list-item-large-content-gap);
|
|
49920
|
+
}
|
|
49921
|
+
|
|
49897
49922
|
/* ---------- Data quality ----------
|
|
49898
49923
|
* Orthogonal to the alert frame — both can apply at once. */
|
|
49899
49924
|
|
|
@@ -50102,9 +50127,21 @@ let ObcReadoutListItem = class extends i$4 {
|
|
|
50102
50127
|
get resolvedStacking() {
|
|
50103
50128
|
return this.stacking ?? "trailing-unit";
|
|
50104
50129
|
}
|
|
50130
|
+
/** Both leading-src stackings move the source into the label stack. */
|
|
50131
|
+
get hasLeadingSrc() {
|
|
50132
|
+
const stacking = this.resolvedStacking;
|
|
50133
|
+
return stacking === "leading-src" || stacking === "leading-src-inline";
|
|
50134
|
+
}
|
|
50105
50135
|
get resolvedPriority() {
|
|
50106
50136
|
return this.priority ?? "regular";
|
|
50107
50137
|
}
|
|
50138
|
+
/**
|
|
50139
|
+
* Whether a unit box follows the value: a unit, or a reserver alone — the
|
|
50140
|
+
* blank reserved column keeps a unit-less row aligned with its neighbours.
|
|
50141
|
+
*/
|
|
50142
|
+
get hasTrailingUnitBox() {
|
|
50143
|
+
return this.resolvedStacking !== "leading-unit" && (Boolean(this.unit) || Boolean(this.unitOptions?.spaceReserver));
|
|
50144
|
+
}
|
|
50108
50145
|
get resolvedFractionDigits() {
|
|
50109
50146
|
return this.fractionDigits ?? 0;
|
|
50110
50147
|
}
|
|
@@ -50333,13 +50370,12 @@ let ObcReadoutListItem = class extends i$4 {
|
|
|
50333
50370
|
if (!this.hasValue) {
|
|
50334
50371
|
return A;
|
|
50335
50372
|
}
|
|
50336
|
-
const hasTrailingUnit = Boolean(this.unit) && this.resolvedStacking !== "leading-unit";
|
|
50337
50373
|
if ((this.hasDegree ?? false) && !this.off) {
|
|
50338
50374
|
return this.renderDegreeGlyph(this.valueSize, {
|
|
50339
50375
|
enhanced: this.rowEnhanced
|
|
50340
50376
|
});
|
|
50341
50377
|
}
|
|
50342
|
-
if (
|
|
50378
|
+
if (this.hasTrailingUnitBox) {
|
|
50343
50379
|
return b`<span class="value-unit-gap" aria-hidden="true"></span>`;
|
|
50344
50380
|
}
|
|
50345
50381
|
return A;
|
|
@@ -50509,7 +50545,7 @@ let ObcReadoutListItem = class extends i$4 {
|
|
|
50509
50545
|
renderLabelContainer() {
|
|
50510
50546
|
const stacking = this.resolvedStacking;
|
|
50511
50547
|
const showLeadingUnit = stacking === "leading-unit" && Boolean(this.unit);
|
|
50512
|
-
const showLeadingSrc =
|
|
50548
|
+
const showLeadingSrc = this.hasLeadingSrc && Boolean(this.src);
|
|
50513
50549
|
return b`
|
|
50514
50550
|
<div class="label-container" part="label-container">
|
|
50515
50551
|
${this.hasLeadingIcon ? b`<span class="leading-icon" aria-hidden="true"
|
|
@@ -50532,12 +50568,12 @@ let ObcReadoutListItem = class extends i$4 {
|
|
|
50532
50568
|
`;
|
|
50533
50569
|
}
|
|
50534
50570
|
renderTrailingUnit() {
|
|
50535
|
-
if (
|
|
50571
|
+
if (!this.hasTrailingUnitBox) {
|
|
50536
50572
|
return A;
|
|
50537
50573
|
}
|
|
50538
50574
|
return this.renderTextbox(
|
|
50539
50575
|
"unit",
|
|
50540
|
-
this.unit,
|
|
50576
|
+
this.unit ?? "",
|
|
50541
50577
|
this.unitOptions?.spaceReserver
|
|
50542
50578
|
);
|
|
50543
50579
|
}
|
|
@@ -50584,7 +50620,7 @@ let ObcReadoutListItem = class extends i$4 {
|
|
|
50584
50620
|
`;
|
|
50585
50621
|
}
|
|
50586
50622
|
renderTrailingSource() {
|
|
50587
|
-
if (this.
|
|
50623
|
+
if (this.hasLeadingSrc || !this.src) {
|
|
50588
50624
|
return A;
|
|
50589
50625
|
}
|
|
50590
50626
|
return b`
|
|
@@ -55301,6 +55337,7 @@ let ObcReadout = class extends i$4 {
|
|
|
55301
55337
|
this.showDebugOverlay = false;
|
|
55302
55338
|
this.deferredSetpointHidePhase = ReadoutBlockHidePhase.none;
|
|
55303
55339
|
this.hasCompletedFirstUpdate = false;
|
|
55340
|
+
this.hasWarnedHorizontalSize = false;
|
|
55304
55341
|
this.sourcePickerContentVisible = false;
|
|
55305
55342
|
this.sourcePickerOptions = [];
|
|
55306
55343
|
this.onWindowPointerDown = (event) => {
|
|
@@ -56050,6 +56087,23 @@ let ObcReadout = class extends i$4 {
|
|
|
56050
56087
|
super.willUpdate(changed);
|
|
56051
56088
|
assertReadoutValueType("obc-readout", this.value, this.valueType);
|
|
56052
56089
|
assertReadoutFractionDigits("obc-readout", this.fractionDigits);
|
|
56090
|
+
this.warnHorizontalSizeIgnored();
|
|
56091
|
+
}
|
|
56092
|
+
/**
|
|
56093
|
+
* A horizontal readout discards any `size` but `large` (see `resolvedSize`).
|
|
56094
|
+
* A silent discard is indistinguishable from a bug to a consumer, so each
|
|
56095
|
+
* offending element says so once and logs itself for locating (#1182).
|
|
56096
|
+
* A removed `size` attribute arrives as `null` and counts as unset.
|
|
56097
|
+
*/
|
|
56098
|
+
warnHorizontalSizeIgnored() {
|
|
56099
|
+
if (this.hasWarnedHorizontalSize || !this.isHorizontal || !this.size || this.size === ReadoutSize.large) {
|
|
56100
|
+
return;
|
|
56101
|
+
}
|
|
56102
|
+
this.hasWarnedHorizontalSize = true;
|
|
56103
|
+
console.warn(
|
|
56104
|
+
`[obc-readout] size="${this.size}" is ignored when direction="horizontal": the horizontal arrangement exists in the large tier only. Remove the size, or use direction="vertical" for the small / medium tiers.`,
|
|
56105
|
+
this
|
|
56106
|
+
);
|
|
56053
56107
|
}
|
|
56054
56108
|
updated(changed) {
|
|
56055
56109
|
super.updated(changed);
|
|
@@ -85256,7 +85310,7 @@ let ObcAlertListDetails = class extends i$4 {
|
|
|
85256
85310
|
if (this.small) {
|
|
85257
85311
|
const columns = [
|
|
85258
85312
|
{
|
|
85259
|
-
label: "
|
|
85313
|
+
label: "Status",
|
|
85260
85314
|
key: "status",
|
|
85261
85315
|
sortDirection: "desc",
|
|
85262
85316
|
sortable: true,
|
|
@@ -85284,7 +85338,7 @@ let ObcAlertListDetails = class extends i$4 {
|
|
|
85284
85338
|
} else {
|
|
85285
85339
|
const columns = [
|
|
85286
85340
|
{
|
|
85287
|
-
label: "
|
|
85341
|
+
label: "Status",
|
|
85288
85342
|
key: "status",
|
|
85289
85343
|
sortDirection: "desc",
|
|
85290
85344
|
sortable: true,
|
|
@@ -86721,6 +86775,62 @@ const compentStyle$P = i$7`* {
|
|
|
86721
86775
|
"ss04" on;
|
|
86722
86776
|
}
|
|
86723
86777
|
|
|
86778
|
+
.wrapper.integration {
|
|
86779
|
+
border-color: var(--integration-flat-enabled-border-color);
|
|
86780
|
+
background-color: var(--integration-flat-enabled-background-color);
|
|
86781
|
+
border-width: 1px;
|
|
86782
|
+
border-style: solid;
|
|
86783
|
+
cursor: pointer;
|
|
86784
|
+
--base-border-color: var(--integration-flat-enabled-border-color);
|
|
86785
|
+
--base-background-color: var(--integration-flat-enabled-background-color);
|
|
86786
|
+
}
|
|
86787
|
+
|
|
86788
|
+
.wrapper.integration:focus {
|
|
86789
|
+
outline: none;
|
|
86790
|
+
}
|
|
86791
|
+
|
|
86792
|
+
.wrapper.integration.activated {
|
|
86793
|
+
border-color: var(--integration-flat-activated-border-color);
|
|
86794
|
+
background-color: var(--integration-flat-activated-background-color);
|
|
86795
|
+
--base-border-color: var(--integration-flat-activated-border-color);
|
|
86796
|
+
--base-background-color: var(--integration-flat-activated-background-color);
|
|
86797
|
+
}
|
|
86798
|
+
|
|
86799
|
+
@media (hover:hover) {
|
|
86800
|
+
|
|
86801
|
+
.wrapper.integration:hover {
|
|
86802
|
+
border-color: color-mix(in srgb, var(--integration-flat-hover-border-color) calc(var(--obc-can-hover) * 100%), var(--base-border-color));
|
|
86803
|
+
background-color: color-mix(in srgb, var(--integration-flat-hover-background-color) calc(var(--obc-can-hover) * 100%), var(--base-background-color));
|
|
86804
|
+
}
|
|
86805
|
+
}
|
|
86806
|
+
|
|
86807
|
+
.wrapper.integration:active {
|
|
86808
|
+
border-color: var(--integration-flat-pressed-border-color);
|
|
86809
|
+
background-color: var(--integration-flat-pressed-background-color);
|
|
86810
|
+
}
|
|
86811
|
+
|
|
86812
|
+
.wrapper.integration:focus-visible {
|
|
86813
|
+
outline-color: var(--border-focus-color);
|
|
86814
|
+
outline-width: var(--global-size-spacing-border-weight-focusframe);
|
|
86815
|
+
outline-style: solid;
|
|
86816
|
+
border-color: var(--container-global-color);
|
|
86817
|
+
z-index: 1;
|
|
86818
|
+
}
|
|
86819
|
+
|
|
86820
|
+
.wrapper.integration:disabled {
|
|
86821
|
+
border-color: var(--integration-flat-disabled-border-color);
|
|
86822
|
+
background-color: var(--integration-flat-disabled-background-color);
|
|
86823
|
+
cursor: not-allowed;
|
|
86824
|
+
color: var(--integration-on-flat-disabled-color) !important;
|
|
86825
|
+
}
|
|
86826
|
+
|
|
86827
|
+
.wrapper.integration.disabled {
|
|
86828
|
+
border-color: var(--integration-flat-disabled-border-color);
|
|
86829
|
+
background-color: var(--integration-flat-disabled-background-color);
|
|
86830
|
+
cursor: not-allowed;
|
|
86831
|
+
color: var(--integration-on-flat-disabled-color) !important;
|
|
86832
|
+
}
|
|
86833
|
+
|
|
86724
86834
|
:is(.wrapper.integration .icon-wrapper) {
|
|
86725
86835
|
border-color: var(--integration-normal-enabled-border-color);
|
|
86726
86836
|
background-color: var(--integration-normal-enabled-background-color);
|
|
@@ -216921,10 +217031,21 @@ const compentStyle$j = i$7`* {
|
|
|
216921
217031
|
}
|
|
216922
217032
|
|
|
216923
217033
|
.wrapper .center {
|
|
216924
|
-
display:
|
|
217034
|
+
display: grid;
|
|
217035
|
+
grid-auto-flow: column;
|
|
217036
|
+
grid-auto-columns: minmax(
|
|
217037
|
+
var(--obc-integration-app-bar-app-width, max-content),
|
|
217038
|
+
1fr
|
|
217039
|
+
);
|
|
216925
217040
|
gap: var(--app-components-app-menu-app-button-spacing);
|
|
216926
217041
|
justify-content: center;
|
|
216927
217042
|
}
|
|
217043
|
+
|
|
217044
|
+
/* Svelte wrappers add a slot container that must not become a grid item. */
|
|
217045
|
+
|
|
217046
|
+
slot[name="apps"]::slotted(:not(obc-app-button)) {
|
|
217047
|
+
display: contents;
|
|
217048
|
+
}
|
|
216928
217049
|
`;
|
|
216929
217050
|
var __getOwnPropDesc$11 = Object.getOwnPropertyDescriptor;
|
|
216930
217051
|
var __decorateClass$11 = (decorators, target, key, kind) => {
|
|
@@ -216940,32 +217061,12 @@ let ObcIntegrationAppBar = class extends i$4 {
|
|
|
216940
217061
|
<div class="wrapper">
|
|
216941
217062
|
<div class="left-side"></div>
|
|
216942
217063
|
<div class="center">
|
|
216943
|
-
<slot name="apps"
|
|
217064
|
+
<slot name="apps"></slot>
|
|
216944
217065
|
</div>
|
|
216945
217066
|
<div class="right-side"></div>
|
|
216946
217067
|
</div>
|
|
216947
217068
|
`;
|
|
216948
217069
|
}
|
|
216949
|
-
handleAppsSlotChange(event) {
|
|
216950
|
-
const slot = event.target;
|
|
216951
|
-
const buttons = slot.assignedElements();
|
|
216952
|
-
if (buttons.length === 0) {
|
|
216953
|
-
return;
|
|
216954
|
-
}
|
|
216955
|
-
for (const btn of buttons) {
|
|
216956
|
-
btn.style.width = "";
|
|
216957
|
-
}
|
|
216958
|
-
requestAnimationFrame(() => {
|
|
216959
|
-
const maxWidth = Math.max(
|
|
216960
|
-
...buttons.map((btn) => btn.getBoundingClientRect().width)
|
|
216961
|
-
);
|
|
216962
|
-
if (maxWidth > 0) {
|
|
216963
|
-
for (const btn of buttons) {
|
|
216964
|
-
btn.style.width = `${maxWidth}px`;
|
|
216965
|
-
}
|
|
216966
|
-
}
|
|
216967
|
-
});
|
|
216968
|
-
}
|
|
216969
217070
|
};
|
|
216970
217071
|
ObcIntegrationAppBar.styles = r$7(compentStyle$j);
|
|
216971
217072
|
ObcIntegrationAppBar = __decorateClass$11([
|