@oicl/openbridge-webcomponents-full-bundle 2.0.0-next.88 → 2.0.0-next.90

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 (31) hide show
  1. package/bundle/openbridge-webcomponents.bundle.js +17477 -16780
  2. package/bundle/openbridge-webcomponents.bundle.js.map +1 -1
  3. package/custom-elements.json +742 -43
  4. package/dist/building-blocks/readout-block/readout-block.css.js +229 -0
  5. package/dist/building-blocks/readout-block/readout-block.css.js.map +1 -0
  6. package/dist/building-blocks/readout-block/readout-block.d.ts +146 -0
  7. package/dist/building-blocks/readout-block/readout-block.d.ts.map +1 -0
  8. package/dist/building-blocks/readout-block/readout-block.js +273 -0
  9. package/dist/building-blocks/readout-block/readout-block.js.map +1 -0
  10. package/dist/navigation-instruments/readout-list/readout-list.css.js +26 -0
  11. package/dist/navigation-instruments/readout-list/readout-list.css.js.map +1 -0
  12. package/dist/navigation-instruments/readout-list/readout-list.d.ts +70 -0
  13. package/dist/navigation-instruments/readout-list/readout-list.d.ts.map +1 -0
  14. package/dist/navigation-instruments/readout-list/readout-list.js +154 -0
  15. package/dist/navigation-instruments/readout-list/readout-list.js.map +1 -0
  16. package/dist/navigation-instruments/readout-list-item/readout-list-item.css.js +139 -124
  17. package/dist/navigation-instruments/readout-list-item/readout-list-item.css.js.map +1 -1
  18. package/dist/navigation-instruments/readout-list-item/readout-list-item.d.ts +57 -26
  19. package/dist/navigation-instruments/readout-list-item/readout-list-item.d.ts.map +1 -1
  20. package/dist/navigation-instruments/readout-list-item/readout-list-item.js +139 -125
  21. package/dist/navigation-instruments/readout-list-item/readout-list-item.js.map +1 -1
  22. package/package.json +1 -1
  23. package/src/building-blocks/readout-block/readout-block.css +192 -0
  24. package/src/building-blocks/readout-block/readout-block.stories.ts +347 -0
  25. package/src/building-blocks/readout-block/readout-block.ts +355 -0
  26. package/src/navigation-instruments/readout-list/readout-list.css +15 -0
  27. package/src/navigation-instruments/readout-list/readout-list.stories.ts +358 -0
  28. package/src/navigation-instruments/readout-list/readout-list.ts +216 -0
  29. package/src/navigation-instruments/readout-list-item/readout-list-item.css +141 -120
  30. package/src/navigation-instruments/readout-list-item/readout-list-item.stories.ts +145 -29
  31. package/src/navigation-instruments/readout-list-item/readout-list-item.ts +169 -146
@@ -38223,6 +38223,548 @@
38223
38223
  }
38224
38224
  ]
38225
38225
  },
38226
+ {
38227
+ "kind": "javascript-module",
38228
+ "path": "src/building-blocks/readout-block/readout-block.ts",
38229
+ "declarations": [
38230
+ {
38231
+ "kind": "class",
38232
+ "description": "`<obc-readout-block>` – the most atomic readout primitive: a single\ncap-height-aligned, width-reservable numeric segment (value / setpoint /\nadvice).\n\nIt renders one `obc-textbox` number with optional hinted leading zeros, a\nreservable width, an optional leading marker icon (via the `icon` slot or the\nrole default), an optional trailing degree glyph, an `off`/unavailable text\nstate, per-block data-quality and an optional per-block alert frame.\n\nThis is a building block used inside `obc-readout-list-item` (and, in a future\nrefactor, inside `obc-readout`); it is not normally used on its own. Colour is\ninherited from the host context (the parent sets the role colour), so the\nblock stays neutral until placed.",
38233
+ "name": "ObcReadoutBlock",
38234
+ "cssParts": [
38235
+ {
38236
+ "description": "The block container (carries role / tone / data-quality).",
38237
+ "name": "block"
38238
+ },
38239
+ {
38240
+ "description": "The number + degree group.",
38241
+ "name": "block-content"
38242
+ },
38243
+ {
38244
+ "description": "The `obc-textbox` rendering the number.",
38245
+ "name": "block-text"
38246
+ },
38247
+ {
38248
+ "description": "The leading marker-icon container.",
38249
+ "name": "block-icon"
38250
+ },
38251
+ {
38252
+ "description": "The trailing degree-glyph column.",
38253
+ "name": "degree"
38254
+ }
38255
+ ],
38256
+ "slots": [
38257
+ {
38258
+ "description": "Replaces the role's default marker icon.",
38259
+ "name": "icon"
38260
+ }
38261
+ ],
38262
+ "members": [
38263
+ {
38264
+ "kind": "field",
38265
+ "name": "variant",
38266
+ "type": {
38267
+ "text": "ReadoutBlockVariant"
38268
+ },
38269
+ "description": "Semantic variant (value / setpoint / advice).",
38270
+ "attribute": "variant"
38271
+ },
38272
+ {
38273
+ "kind": "field",
38274
+ "name": "value",
38275
+ "type": {
38276
+ "text": "number | null"
38277
+ },
38278
+ "default": "null",
38279
+ "description": "The numeric value; `null`/`undefined` renders a dash.",
38280
+ "attribute": "value"
38281
+ },
38282
+ {
38283
+ "kind": "field",
38284
+ "name": "size",
38285
+ "type": {
38286
+ "text": "ReadoutBlockSize"
38287
+ },
38288
+ "description": "Density tier — icon size, gap, degree tier.",
38289
+ "attribute": "size"
38290
+ },
38291
+ {
38292
+ "kind": "field",
38293
+ "name": "valueSize",
38294
+ "type": {
38295
+ "text": "ObcTextboxSize | undefined"
38296
+ },
38297
+ "description": "Resolved number-typography size. When unset it is derived from `size`\n(small→s, medium→m, large→l), so a parent that de-emphasises a block (e.g.\na secondary setpoint) can pass a smaller size without changing the tier.",
38298
+ "attribute": "valueSize"
38299
+ },
38300
+ {
38301
+ "kind": "field",
38302
+ "name": "enhanced",
38303
+ "type": {
38304
+ "text": "boolean"
38305
+ },
38306
+ "default": "false",
38307
+ "description": "Accent (in-command) colour tone.",
38308
+ "attribute": "enhanced"
38309
+ },
38310
+ {
38311
+ "kind": "field",
38312
+ "name": "weight",
38313
+ "type": {
38314
+ "text": "ObcTextboxFontWeight"
38315
+ },
38316
+ "description": "Number font weight (regular / semibold / bold); colour is independent.",
38317
+ "attribute": "weight"
38318
+ },
38319
+ {
38320
+ "kind": "field",
38321
+ "name": "hasDegree",
38322
+ "type": {
38323
+ "text": "boolean"
38324
+ },
38325
+ "default": "false",
38326
+ "description": "Render the trailing cap-height degree glyph (`°`).",
38327
+ "attribute": "hasDegree"
38328
+ },
38329
+ {
38330
+ "kind": "field",
38331
+ "name": "hasIcon",
38332
+ "type": {
38333
+ "text": "boolean"
38334
+ },
38335
+ "default": "false",
38336
+ "description": "Show the leading marker-icon container (always on for setpoint/advice).",
38337
+ "attribute": "hasIcon"
38338
+ },
38339
+ {
38340
+ "kind": "field",
38341
+ "name": "fractionDigits",
38342
+ "type": {
38343
+ "text": "number"
38344
+ },
38345
+ "default": "0",
38346
+ "description": "Number of fraction digits.",
38347
+ "attribute": "fractionDigits"
38348
+ },
38349
+ {
38350
+ "kind": "field",
38351
+ "name": "maxDigits",
38352
+ "type": {
38353
+ "text": "number"
38354
+ },
38355
+ "default": "0",
38356
+ "description": "Integer digits to reserve / hint (independent of `fractionDigits`).",
38357
+ "attribute": "maxDigits"
38358
+ },
38359
+ {
38360
+ "kind": "field",
38361
+ "name": "hintedZeros",
38362
+ "type": {
38363
+ "text": "boolean"
38364
+ },
38365
+ "default": "false",
38366
+ "description": "Render muted leading zeros filling the integer part to `maxDigits`.",
38367
+ "attribute": "hintedZeros"
38368
+ },
38369
+ {
38370
+ "kind": "field",
38371
+ "name": "spaceReserver",
38372
+ "type": {
38373
+ "text": "string | undefined"
38374
+ },
38375
+ "description": "Explicit longest string to reserve width for (e.g. `\"0000.0\"`).",
38376
+ "attribute": "spaceReserver"
38377
+ },
38378
+ {
38379
+ "kind": "field",
38380
+ "name": "off",
38381
+ "type": {
38382
+ "text": "boolean"
38383
+ },
38384
+ "default": "false",
38385
+ "description": "Render `offText` instead of a number (e.g. equipment powered down).",
38386
+ "attribute": "off"
38387
+ },
38388
+ {
38389
+ "kind": "field",
38390
+ "name": "offText",
38391
+ "type": {
38392
+ "text": "string"
38393
+ },
38394
+ "default": "'OFF'",
38395
+ "description": "Text shown when `off` is true.",
38396
+ "attribute": "offText"
38397
+ },
38398
+ {
38399
+ "kind": "field",
38400
+ "name": "alignment",
38401
+ "type": {
38402
+ "text": "ObcTextboxAlignment"
38403
+ },
38404
+ "description": "Text alignment of the number within its reserved width.",
38405
+ "attribute": "alignment"
38406
+ },
38407
+ {
38408
+ "kind": "field",
38409
+ "name": "dataQuality",
38410
+ "type": {
38411
+ "text": "ReadoutBlockDataQuality | undefined"
38412
+ },
38413
+ "description": "Per-block measurement quality (outline chip).",
38414
+ "attribute": "dataQuality"
38415
+ },
38416
+ {
38417
+ "kind": "field",
38418
+ "name": "alert",
38419
+ "type": {
38420
+ "text": "boolean | AlertFrameConfig"
38421
+ },
38422
+ "default": "false",
38423
+ "description": "Per-block alert frame; nests inside any parent alert frame.",
38424
+ "attribute": "alert"
38425
+ },
38426
+ {
38427
+ "kind": "field",
38428
+ "name": "touching",
38429
+ "type": {
38430
+ "text": "boolean"
38431
+ },
38432
+ "default": "false",
38433
+ "description": "Setpoint focus (touch) state — only meaningful for `role=\"setpoint\"`.",
38434
+ "attribute": "touching"
38435
+ },
38436
+ {
38437
+ "kind": "field",
38438
+ "name": "hidePhase",
38439
+ "type": {
38440
+ "text": "ReadoutBlockHidePhase"
38441
+ },
38442
+ "description": "Setpoint pop-up fade phase — only meaningful for `role=\"setpoint\"`.",
38443
+ "attribute": "hidePhase"
38444
+ },
38445
+ {
38446
+ "kind": "field",
38447
+ "name": "hasAssignedIcon",
38448
+ "type": {
38449
+ "text": "boolean"
38450
+ },
38451
+ "privacy": "private",
38452
+ "default": "false"
38453
+ },
38454
+ {
38455
+ "kind": "field",
38456
+ "name": "resolvedValueSize",
38457
+ "type": {
38458
+ "text": "ObcTextboxSize"
38459
+ },
38460
+ "privacy": "private",
38461
+ "readonly": true
38462
+ },
38463
+ {
38464
+ "kind": "field",
38465
+ "name": "numericFormatOptions",
38466
+ "type": {
38467
+ "text": "ReadoutNumericFormatOptions"
38468
+ },
38469
+ "privacy": "private",
38470
+ "readonly": true
38471
+ },
38472
+ {
38473
+ "kind": "field",
38474
+ "name": "reserverText",
38475
+ "type": {
38476
+ "text": "string"
38477
+ },
38478
+ "privacy": "private",
38479
+ "description": "Widest possible value string for width reservation (e.g. `\"000.0\"`).",
38480
+ "readonly": true
38481
+ },
38482
+ {
38483
+ "kind": "method",
38484
+ "name": "widerReserver",
38485
+ "privacy": "private",
38486
+ "return": {
38487
+ "type": {
38488
+ "text": "string"
38489
+ }
38490
+ },
38491
+ "parameters": [
38492
+ {
38493
+ "name": "explicit",
38494
+ "type": {
38495
+ "text": "string | undefined"
38496
+ }
38497
+ },
38498
+ {
38499
+ "name": "derived",
38500
+ "type": {
38501
+ "text": "string"
38502
+ }
38503
+ }
38504
+ ],
38505
+ "description": "Effective width reserver: the wider of the explicit `spaceReserver` and the\n`maxDigits`/`fractionDigits`-derived reserve, so an explicit reserver can\nnever reserve *less* than the formatted value needs. Under tabular-nums the\nrendered width is proportional to character count, so \"wider\" compares length."
38506
+ },
38507
+ {
38508
+ "kind": "method",
38509
+ "name": "dataQualityClasses",
38510
+ "privacy": "private",
38511
+ "return": {
38512
+ "type": {
38513
+ "text": "Record<string, boolean>"
38514
+ }
38515
+ }
38516
+ },
38517
+ {
38518
+ "kind": "field",
38519
+ "name": "onIconSlotChange",
38520
+ "privacy": "private"
38521
+ },
38522
+ {
38523
+ "kind": "method",
38524
+ "name": "renderIcon",
38525
+ "privacy": "private",
38526
+ "return": {
38527
+ "type": {
38528
+ "text": "TemplateResult | typeof nothing"
38529
+ }
38530
+ }
38531
+ },
38532
+ {
38533
+ "kind": "method",
38534
+ "name": "renderDegreeGlyph",
38535
+ "privacy": "private",
38536
+ "return": {
38537
+ "type": {
38538
+ "text": "TemplateResult"
38539
+ }
38540
+ },
38541
+ "parameters": [
38542
+ {
38543
+ "name": "size",
38544
+ "type": {
38545
+ "text": "ObcTextboxSize"
38546
+ }
38547
+ }
38548
+ ],
38549
+ "description": "A cap-height `°` column whose width scales with the number size. Inherits the\nblock's colour."
38550
+ }
38551
+ ],
38552
+ "attributes": [
38553
+ {
38554
+ "name": "variant",
38555
+ "type": {
38556
+ "text": "ReadoutBlockVariant"
38557
+ },
38558
+ "description": "Semantic variant (value / setpoint / advice).",
38559
+ "fieldName": "variant"
38560
+ },
38561
+ {
38562
+ "name": "value",
38563
+ "type": {
38564
+ "text": "number | null"
38565
+ },
38566
+ "default": "null",
38567
+ "description": "The numeric value; `null`/`undefined` renders a dash.",
38568
+ "fieldName": "value"
38569
+ },
38570
+ {
38571
+ "name": "size",
38572
+ "type": {
38573
+ "text": "ReadoutBlockSize"
38574
+ },
38575
+ "description": "Density tier — icon size, gap, degree tier.",
38576
+ "fieldName": "size"
38577
+ },
38578
+ {
38579
+ "name": "valueSize",
38580
+ "type": {
38581
+ "text": "ObcTextboxSize | undefined"
38582
+ },
38583
+ "description": "Resolved number-typography size. When unset it is derived from `size`\n(small→s, medium→m, large→l), so a parent that de-emphasises a block (e.g.\na secondary setpoint) can pass a smaller size without changing the tier.",
38584
+ "fieldName": "valueSize"
38585
+ },
38586
+ {
38587
+ "name": "enhanced",
38588
+ "type": {
38589
+ "text": "boolean"
38590
+ },
38591
+ "default": "false",
38592
+ "description": "Accent (in-command) colour tone.",
38593
+ "fieldName": "enhanced"
38594
+ },
38595
+ {
38596
+ "name": "weight",
38597
+ "type": {
38598
+ "text": "ObcTextboxFontWeight"
38599
+ },
38600
+ "description": "Number font weight (regular / semibold / bold); colour is independent.",
38601
+ "fieldName": "weight"
38602
+ },
38603
+ {
38604
+ "name": "hasDegree",
38605
+ "type": {
38606
+ "text": "boolean"
38607
+ },
38608
+ "default": "false",
38609
+ "description": "Render the trailing cap-height degree glyph (`°`).",
38610
+ "fieldName": "hasDegree"
38611
+ },
38612
+ {
38613
+ "name": "hasIcon",
38614
+ "type": {
38615
+ "text": "boolean"
38616
+ },
38617
+ "default": "false",
38618
+ "description": "Show the leading marker-icon container (always on for setpoint/advice).",
38619
+ "fieldName": "hasIcon"
38620
+ },
38621
+ {
38622
+ "name": "fractionDigits",
38623
+ "type": {
38624
+ "text": "number"
38625
+ },
38626
+ "default": "0",
38627
+ "description": "Number of fraction digits.",
38628
+ "fieldName": "fractionDigits"
38629
+ },
38630
+ {
38631
+ "name": "maxDigits",
38632
+ "type": {
38633
+ "text": "number"
38634
+ },
38635
+ "default": "0",
38636
+ "description": "Integer digits to reserve / hint (independent of `fractionDigits`).",
38637
+ "fieldName": "maxDigits"
38638
+ },
38639
+ {
38640
+ "name": "hintedZeros",
38641
+ "type": {
38642
+ "text": "boolean"
38643
+ },
38644
+ "default": "false",
38645
+ "description": "Render muted leading zeros filling the integer part to `maxDigits`.",
38646
+ "fieldName": "hintedZeros"
38647
+ },
38648
+ {
38649
+ "name": "spaceReserver",
38650
+ "type": {
38651
+ "text": "string | undefined"
38652
+ },
38653
+ "description": "Explicit longest string to reserve width for (e.g. `\"0000.0\"`).",
38654
+ "fieldName": "spaceReserver"
38655
+ },
38656
+ {
38657
+ "name": "off",
38658
+ "type": {
38659
+ "text": "boolean"
38660
+ },
38661
+ "default": "false",
38662
+ "description": "Render `offText` instead of a number (e.g. equipment powered down).",
38663
+ "fieldName": "off"
38664
+ },
38665
+ {
38666
+ "name": "offText",
38667
+ "type": {
38668
+ "text": "string"
38669
+ },
38670
+ "default": "'OFF'",
38671
+ "description": "Text shown when `off` is true.",
38672
+ "fieldName": "offText"
38673
+ },
38674
+ {
38675
+ "name": "alignment",
38676
+ "type": {
38677
+ "text": "ObcTextboxAlignment"
38678
+ },
38679
+ "description": "Text alignment of the number within its reserved width.",
38680
+ "fieldName": "alignment"
38681
+ },
38682
+ {
38683
+ "name": "dataQuality",
38684
+ "type": {
38685
+ "text": "ReadoutBlockDataQuality | undefined"
38686
+ },
38687
+ "description": "Per-block measurement quality (outline chip).",
38688
+ "fieldName": "dataQuality"
38689
+ },
38690
+ {
38691
+ "name": "alert",
38692
+ "type": {
38693
+ "text": "boolean | AlertFrameConfig"
38694
+ },
38695
+ "default": "false",
38696
+ "description": "Per-block alert frame; nests inside any parent alert frame.",
38697
+ "fieldName": "alert"
38698
+ },
38699
+ {
38700
+ "name": "touching",
38701
+ "type": {
38702
+ "text": "boolean"
38703
+ },
38704
+ "default": "false",
38705
+ "description": "Setpoint focus (touch) state — only meaningful for `role=\"setpoint\"`.",
38706
+ "fieldName": "touching"
38707
+ },
38708
+ {
38709
+ "name": "hidePhase",
38710
+ "type": {
38711
+ "text": "ReadoutBlockHidePhase"
38712
+ },
38713
+ "description": "Setpoint pop-up fade phase — only meaningful for `role=\"setpoint\"`.",
38714
+ "fieldName": "hidePhase"
38715
+ }
38716
+ ],
38717
+ "superclass": {
38718
+ "name": "LitElement",
38719
+ "package": "lit"
38720
+ },
38721
+ "tagName": "obc-readout-block",
38722
+ "customElement": true
38723
+ }
38724
+ ],
38725
+ "exports": [
38726
+ {
38727
+ "kind": "js",
38728
+ "name": "ObcTextboxSize",
38729
+ "declaration": {
38730
+ "name": "ObcTextboxSize",
38731
+ "module": "../../components/textbox/textbox.js"
38732
+ }
38733
+ },
38734
+ {
38735
+ "kind": "js",
38736
+ "name": "ObcTextboxFontWeight",
38737
+ "declaration": {
38738
+ "name": "ObcTextboxFontWeight",
38739
+ "module": "../../components/textbox/textbox.js"
38740
+ }
38741
+ },
38742
+ {
38743
+ "kind": "js",
38744
+ "name": "ObcTextboxAlignment",
38745
+ "declaration": {
38746
+ "name": "ObcTextboxAlignment",
38747
+ "module": "../../components/textbox/textbox.js"
38748
+ }
38749
+ },
38750
+ {
38751
+ "kind": "js",
38752
+ "name": "ObcReadoutBlock",
38753
+ "declaration": {
38754
+ "name": "ObcReadoutBlock",
38755
+ "module": "src/building-blocks/readout-block/readout-block.ts"
38756
+ }
38757
+ },
38758
+ {
38759
+ "kind": "custom-element-definition",
38760
+ "name": "obc-readout-block",
38761
+ "declaration": {
38762
+ "name": "ObcReadoutBlock",
38763
+ "module": "src/building-blocks/readout-block/readout-block.ts"
38764
+ }
38765
+ }
38766
+ ]
38767
+ },
38226
38768
  {
38227
38769
  "kind": "javascript-module",
38228
38770
  "path": "src/components/accordion-card/accordion-card.ts",
@@ -85325,9 +85867,19 @@
85325
85867
  "text": "boolean"
85326
85868
  },
85327
85869
  "default": "false",
85328
- "description": "Render the value as the literal \"OFF\" (e.g. equipment powered down). Affects the value only.",
85870
+ "description": "Render the value as `offText` (e.g. equipment powered down). Affects the value only.",
85329
85871
  "attribute": "off"
85330
85872
  },
85873
+ {
85874
+ "kind": "field",
85875
+ "name": "offText",
85876
+ "type": {
85877
+ "text": "string"
85878
+ },
85879
+ "default": "'OFF'",
85880
+ "description": "Text shown in place of the value when `off` is true.",
85881
+ "attribute": "offText"
85882
+ },
85331
85883
  {
85332
85884
  "kind": "field",
85333
85885
  "name": "hasSetpoint",
@@ -85497,6 +86049,17 @@
85497
86049
  },
85498
86050
  "attribute": "srcOptions"
85499
86051
  },
86052
+ {
86053
+ "kind": "field",
86054
+ "name": "showDebugOverlay",
86055
+ "type": {
86056
+ "text": "boolean"
86057
+ },
86058
+ "default": "false",
86059
+ "description": "Development aid: outline the readout building blocks (red), the degree\ncolumns (blue) and the degree spacer (green) so reserver widths / alignment\nare visible. Off by default.",
86060
+ "attribute": "showDebugOverlay",
86061
+ "reflects": true
86062
+ },
85500
86063
  {
85501
86064
  "kind": "field",
85502
86065
  "name": "deferredSetpointHidePhase",
@@ -85719,41 +86282,6 @@
85719
86282
  }
85720
86283
  ]
85721
86284
  },
85722
- {
85723
- "kind": "field",
85724
- "name": "reserverText",
85725
- "type": {
85726
- "text": "string"
85727
- },
85728
- "privacy": "private",
85729
- "description": "Widest possible value string for width reservation (e.g. `\"000.0\"`).",
85730
- "readonly": true
85731
- },
85732
- {
85733
- "kind": "method",
85734
- "name": "widerReserver",
85735
- "privacy": "private",
85736
- "return": {
85737
- "type": {
85738
- "text": "string"
85739
- }
85740
- },
85741
- "parameters": [
85742
- {
85743
- "name": "explicit",
85744
- "type": {
85745
- "text": "string | undefined"
85746
- }
85747
- },
85748
- {
85749
- "name": "derived",
85750
- "type": {
85751
- "text": "string"
85752
- }
85753
- }
85754
- ],
85755
- "description": "Effective width reserver for a numeric block: the wider of the explicit\n`spaceReserver` and the `maxDigits`/`fractionDigits`-derived reserve, so an\nexplicit reserver can never reserve *less* than the formatted value needs.\nUnder tabular-nums the rendered width is proportional to character count, so\n\"wider\" compares string length."
85756
- },
85757
86285
  {
85758
86286
  "kind": "method",
85759
86287
  "name": "dataQualityClasses",
@@ -85775,21 +86303,22 @@
85775
86303
  },
85776
86304
  {
85777
86305
  "kind": "method",
85778
- "name": "renderIcon",
86306
+ "name": "renderForwardedIcon",
85779
86307
  "privacy": "private",
85780
86308
  "return": {
85781
86309
  "type": {
85782
- "text": "TemplateResult | typeof nothing"
86310
+ "text": "TemplateResult"
85783
86311
  }
85784
86312
  },
85785
86313
  "parameters": [
85786
86314
  {
85787
- "name": "role",
86315
+ "name": "variant",
85788
86316
  "type": {
85789
- "text": "BlockRole"
86317
+ "text": "ReadoutBlockVariant"
85790
86318
  }
85791
86319
  }
85792
- ]
86320
+ ],
86321
+ "description": "Forward the matching list-item icon slot into the block's single `icon`\nslot. The variant's default marker lives in `obc-readout-block` and shows\nwhen nothing is assigned here (an empty forwarded slot flattens to nothing)."
85793
86322
  },
85794
86323
  {
85795
86324
  "kind": "method",
@@ -85804,7 +86333,7 @@
85804
86333
  {
85805
86334
  "name": "config",
85806
86335
  "type": {
85807
- "text": "{\n role: BlockRole;\n value: number | null | undefined;\n size: ObcTextboxSize;\n enhanced: boolean;\n weight: ObcTextboxFontWeight;\n hintedZeros: boolean;\n spaceReserver?: string;\n off?: boolean;\n hasDegree?: boolean;\n extraClasses?: Record<string, boolean>;\n dataQuality?: ReadoutListItemDataQuality;\n alert?: false | AlertFrameConfig;\n }"
86336
+ "text": "{\n variant: ReadoutBlockVariant;\n value: number | null | undefined;\n valueSize: ObcTextboxSize;\n enhanced: boolean;\n weight: ObcTextboxFontWeight;\n hintedZeros: boolean;\n spaceReserver?: string;\n off?: boolean;\n hasDegree?: boolean;\n hasIcon?: boolean;\n touching?: boolean;\n hidePhase?: ReadoutBlockHidePhase;\n dataQuality?: ReadoutBlockDataQuality;\n alert?: false | AlertFrameConfig;\n }"
85808
86337
  }
85809
86338
  }
85810
86339
  ]
@@ -85905,6 +86434,28 @@
85905
86434
  }
85906
86435
  }
85907
86436
  },
86437
+ {
86438
+ "kind": "method",
86439
+ "name": "renderValueReading",
86440
+ "privacy": "private",
86441
+ "return": {
86442
+ "type": {
86443
+ "text": "TemplateResult"
86444
+ }
86445
+ },
86446
+ "description": "The value reading: the value block, its degree column and the trailing unit\ngrouped in one relatively-positioned wrapper so the value alert frame AND the\nvalue data-quality chip can wrap value + degree + unit together (Figma\n58:10120).\n\nMoving the degree / unit into this wrapper (the new last child of\n`.value-cluster`) preserves every existing gap, so the underlying content\nstays column-aligned with or without the frame / chip. Both the value alert\n(overlay) and the value data-quality chip are applied here — NOT inside\n`obc-readout-block` — so they extend over the unit; setpoint/advice keep their\nown block-level frame and chip. The chip uses `outline` (not `border`), so it\nnever shifts the value's width / column alignment."
86447
+ },
86448
+ {
86449
+ "kind": "method",
86450
+ "name": "renderValueAlertOverlay",
86451
+ "privacy": "private",
86452
+ "return": {
86453
+ "type": {
86454
+ "text": "TemplateResult | typeof nothing"
86455
+ }
86456
+ },
86457
+ "description": "The value alert frame, drawn as a pure overlay around the value reading\n(value + degree + unit). It reserves no space — the `obc-alert-frame` sits in\nan absolutely-positioned box offset outward (see `.value-alert-overlay` in\nthe CSS) so its stroke is centred on the 4px/2px padding line and toggling it\nnever shifts content or row height. Renders only when `valueOptions.alert` is\na config object."
86458
+ },
85908
86459
  {
85909
86460
  "kind": "method",
85910
86461
  "name": "renderLabelContainer",
@@ -85992,9 +86543,18 @@
85992
86543
  "text": "boolean"
85993
86544
  },
85994
86545
  "default": "false",
85995
- "description": "Render the value as the literal \"OFF\" (e.g. equipment powered down). Affects the value only.",
86546
+ "description": "Render the value as `offText` (e.g. equipment powered down). Affects the value only.",
85996
86547
  "fieldName": "off"
85997
86548
  },
86549
+ {
86550
+ "name": "offText",
86551
+ "type": {
86552
+ "text": "string"
86553
+ },
86554
+ "default": "'OFF'",
86555
+ "description": "Text shown in place of the value when `off` is true.",
86556
+ "fieldName": "offText"
86557
+ },
85998
86558
  {
85999
86559
  "name": "hasSetpoint",
86000
86560
  "type": {
@@ -86143,6 +86703,15 @@
86143
86703
  "text": "ReadoutSrcOptions | undefined"
86144
86704
  },
86145
86705
  "fieldName": "srcOptions"
86706
+ },
86707
+ {
86708
+ "name": "showDebugOverlay",
86709
+ "type": {
86710
+ "text": "boolean"
86711
+ },
86712
+ "default": "false",
86713
+ "description": "Development aid: outline the readout building blocks (red), the degree\ncolumns (blue) and the degree spacer (green) so reserver widths / alignment\nare visible. Off by default.",
86714
+ "fieldName": "showDebugOverlay"
86146
86715
  }
86147
86716
  ],
86148
86717
  "superclass": {
@@ -86162,6 +86731,22 @@
86162
86731
  "module": "../../components/textbox/textbox.js"
86163
86732
  }
86164
86733
  },
86734
+ {
86735
+ "kind": "js",
86736
+ "name": "ReadoutListItemSize",
86737
+ "declaration": {
86738
+ "name": "ReadoutListItemSize",
86739
+ "module": "src/navigation-instruments/readout-list-item/readout-list-item.ts"
86740
+ }
86741
+ },
86742
+ {
86743
+ "kind": "js",
86744
+ "name": "ReadoutListItemDataQuality",
86745
+ "declaration": {
86746
+ "name": "ReadoutListItemDataQuality",
86747
+ "module": "src/navigation-instruments/readout-list-item/readout-list-item.ts"
86748
+ }
86749
+ },
86165
86750
  {
86166
86751
  "kind": "js",
86167
86752
  "name": "ObcReadoutListItem",
@@ -86180,6 +86765,120 @@
86180
86765
  }
86181
86766
  ]
86182
86767
  },
86768
+ {
86769
+ "kind": "javascript-module",
86770
+ "path": "src/navigation-instruments/readout-list/readout-list.ts",
86771
+ "declarations": [
86772
+ {
86773
+ "kind": "class",
86774
+ "description": "`<obc-readout-list>` – A container that groups `<obc-readout-list-item>` rows\nand **auto-aligns their columns**.\n\nBecause each row is its own custom element, cross-row column alignment is not\nautomatic. This container inspects its rows and pushes shared width reservers\ndown so the unit column, the value / setpoint / advice columns and the source\ncolumn all line up — the same effect the `Readout List Item → ColumnAlignment`\nstory achieves by hand, done for you. Alignment is always on.\n\nWhat it equalizes — derived from each row's data and broadcast to every row, so\nthe widest value / unit / source is never clipped:\n- **Unit:** the longest `unit` becomes every row's unit space-reserver.\n- **Value / setpoint / advice:** the widest numeric width (max integer digits +\n max fraction digits across rows, derived from each row's `maxDigits` /\n `fractionDigits` / current values) is reserved on every row's numeric blocks.\n Reserving off digit counts keeps it stable as live values update.\n- **Source:** the longest `src` becomes every row's source space-reserver.\n- **Degree:** if any row has a degree, non-degree rows reserve the degree column\n (`hasDegreeSpacer`) so their digits line up with the degree rows; the spacer is\n cleared once no degree rows remain.\n\nThe list **owns** these reservers: it recomputes them from the rows' data on\nevery pass (and clears stale reservers / spacers when rows change), so a\n`spaceReserver` set directly on a row inside the list is overwritten. Drive the\ndata (`maxDigits` / `fractionDigits` / `unit` / `src`) rather than setting a\nmanual reserver when a row lives in a list.\n\nAlignment runs on `slotchange` and on child mutations (added/removed rows and\nHTML-attribute changes). When rows are updated via JS **properties** only (no\nattribute/DOM mutation), call align to recompute.",
86775
+ "name": "ObcReadoutList",
86776
+ "cssParts": [
86777
+ {
86778
+ "description": "The vertical stack container.",
86779
+ "name": "list"
86780
+ }
86781
+ ],
86782
+ "slots": [
86783
+ {
86784
+ "description": "The `<obc-readout-list-item>` rows.",
86785
+ "name": ""
86786
+ }
86787
+ ],
86788
+ "members": [
86789
+ {
86790
+ "kind": "field",
86791
+ "name": "showDebugOverlay",
86792
+ "type": {
86793
+ "text": "boolean"
86794
+ },
86795
+ "default": "false",
86796
+ "description": "Development aid: outline each row's readout building blocks (red), degree\ncolumns (blue) and degree spacer (green) so the reserved column widths are\nvisible. Propagated to every row. Off by default.",
86797
+ "attribute": "showDebugOverlay",
86798
+ "reflects": true
86799
+ },
86800
+ {
86801
+ "kind": "field",
86802
+ "name": "mutationObserver",
86803
+ "type": {
86804
+ "text": "MutationObserver | undefined"
86805
+ },
86806
+ "privacy": "private"
86807
+ },
86808
+ {
86809
+ "kind": "field",
86810
+ "name": "items",
86811
+ "type": {
86812
+ "text": "ObcReadoutListItem[]"
86813
+ },
86814
+ "privacy": "private",
86815
+ "description": "The `obc-readout-list-item` rows, including those nested in wrapper elements.",
86816
+ "readonly": true
86817
+ },
86818
+ {
86819
+ "kind": "method",
86820
+ "name": "align",
86821
+ "return": {
86822
+ "type": {
86823
+ "text": "void"
86824
+ }
86825
+ },
86826
+ "description": "Recompute and apply the shared column reservers across all rows. Call this\nafter updating rows via JS properties only (attribute/DOM changes are picked\nup automatically)."
86827
+ },
86828
+ {
86829
+ "kind": "method",
86830
+ "name": "observeChildren",
86831
+ "privacy": "private",
86832
+ "return": {
86833
+ "type": {
86834
+ "text": "void"
86835
+ }
86836
+ }
86837
+ },
86838
+ {
86839
+ "kind": "field",
86840
+ "name": "handleSlotChange",
86841
+ "privacy": "private"
86842
+ }
86843
+ ],
86844
+ "attributes": [
86845
+ {
86846
+ "name": "showDebugOverlay",
86847
+ "type": {
86848
+ "text": "boolean"
86849
+ },
86850
+ "default": "false",
86851
+ "description": "Development aid: outline each row's readout building blocks (red), degree\ncolumns (blue) and degree spacer (green) so the reserved column widths are\nvisible. Propagated to every row. Off by default.",
86852
+ "fieldName": "showDebugOverlay"
86853
+ }
86854
+ ],
86855
+ "superclass": {
86856
+ "name": "LitElement",
86857
+ "package": "lit"
86858
+ },
86859
+ "tagName": "obc-readout-list",
86860
+ "customElement": true
86861
+ }
86862
+ ],
86863
+ "exports": [
86864
+ {
86865
+ "kind": "js",
86866
+ "name": "ObcReadoutList",
86867
+ "declaration": {
86868
+ "name": "ObcReadoutList",
86869
+ "module": "src/navigation-instruments/readout-list/readout-list.ts"
86870
+ }
86871
+ },
86872
+ {
86873
+ "kind": "custom-element-definition",
86874
+ "name": "obc-readout-list",
86875
+ "declaration": {
86876
+ "name": "ObcReadoutList",
86877
+ "module": "src/navigation-instruments/readout-list/readout-list.ts"
86878
+ }
86879
+ }
86880
+ ]
86881
+ },
86183
86882
  {
86184
86883
  "kind": "javascript-module",
86185
86884
  "path": "src/navigation-instruments/readout-setpoint/readout-setpoint.ts",