@oicl/openbridge-webcomponents-svelte 2.0.0-next.93 → 2.0.0-next.95

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 (21) hide show
  1. package/dist/bars-graphs/area-graph/ObcAreaGraph.svelte +9 -5
  2. package/dist/bars-graphs/area-graph/ObcAreaGraph.svelte.d.ts +9 -7
  3. package/dist/bars-graphs/line-graph/ObcLineGraph.svelte +9 -5
  4. package/dist/bars-graphs/line-graph/ObcLineGraph.svelte.d.ts +9 -7
  5. package/dist/building-blocks/chart-line/ObcChartLineBase.svelte +9 -5
  6. package/dist/building-blocks/chart-line/ObcChartLineBase.svelte.d.ts +9 -7
  7. package/dist/index.d.ts +0 -2
  8. package/dist/index.js +0 -2
  9. package/dist/navigation-instruments/azimuth-thruster-labeled/ObcAzimuthThrusterLabeled.svelte +3 -3
  10. package/dist/navigation-instruments/azimuth-thruster-labeled/ObcAzimuthThrusterLabeled.svelte.d.ts +3 -3
  11. package/dist/navigation-instruments/gauge-trend/ObcGaugeTrend.svelte +9 -5
  12. package/dist/navigation-instruments/gauge-trend/ObcGaugeTrend.svelte.d.ts +9 -7
  13. package/dist/navigation-instruments/readout/ObcReadout.svelte +52 -112
  14. package/dist/navigation-instruments/readout/ObcReadout.svelte.d.ts +50 -74
  15. package/dist/navigation-instruments/readout-list-item/ObcReadoutListItem.svelte +5 -1
  16. package/dist/navigation-instruments/readout-list-item/ObcReadoutListItem.svelte.d.ts +4 -0
  17. package/package.json +2 -2
  18. package/dist/navigation-instruments/readout-advice/ObcReadoutAdvice.svelte +0 -53
  19. package/dist/navigation-instruments/readout-advice/ObcReadoutAdvice.svelte.d.ts +0 -40
  20. package/dist/navigation-instruments/readout-setpoint/ObcReadoutSetpoint.svelte +0 -63
  21. package/dist/navigation-instruments/readout-setpoint/ObcReadoutSetpoint.svelte.d.ts +0 -47
@@ -1,12 +1,12 @@
1
1
 
2
2
  <script lang="ts">
3
- export type {ChartLineDataItem, XAxisType, YAxisPosition, ChartLineYAxisConfig, LineMode, TimeDisplay} from '@oicl/openbridge-webcomponents/dist/building-blocks/chart-line/chart-line-base.js';
3
+ export type {ChartLineDataItem, ChartLinePoint, XAxisType, YAxisPosition, ChartLineYAxisConfig, LineMode, TimeDisplay} from '@oicl/openbridge-webcomponents/dist/building-blocks/chart-line/chart-line-base.js';
4
4
  export type {ChartDataset} from 'chart.js';
5
5
  export type {InstrumentState, Priority, FrameStyle, BorderRadiusPosition} from '@oicl/openbridge-webcomponents/dist/navigation-instruments/types.js';
6
6
  export type {AreaFillMode} from '@oicl/openbridge-webcomponents/dist/bars-graphs/area-graph/area-graph.js';
7
7
  import '@oicl/openbridge-webcomponents/dist/bars-graphs/area-graph/area-graph.js';
8
8
  import { setProperties } from "../../util.js";
9
- import type {ChartLineDataItem, XAxisType, YAxisPosition, ChartLineYAxisConfig, LineMode, TimeDisplay} from '@oicl/openbridge-webcomponents/dist/building-blocks/chart-line/chart-line-base.js';
9
+ import type {ChartLineDataItem, ChartLinePoint, XAxisType, YAxisPosition, ChartLineYAxisConfig, LineMode, TimeDisplay} from '@oicl/openbridge-webcomponents/dist/building-blocks/chart-line/chart-line-base.js';
10
10
  import type {ChartDataset} from 'chart.js';
11
11
  import type {InstrumentState, Priority, FrameStyle, BorderRadiusPosition} from '@oicl/openbridge-webcomponents/dist/navigation-instruments/types.js';
12
12
  import type {AreaFillMode} from '@oicl/openbridge-webcomponents/dist/bars-graphs/area-graph/area-graph.js';
@@ -15,10 +15,12 @@ import type {AreaFillMode} from '@oicl/openbridge-webcomponents/dist/bars-graphs
15
15
  export interface Props {
16
16
  class?: string;
17
17
  style?: string;
18
- /** Simple single-series data (array of {label, value}). */
18
+ /** Simple single-series data. `{label, value}` items for the category axis;
19
+ `{x, value}` items for time/number axes (x: epoch ms, ISO string, Date,
20
+ or Temporal object). Points are drawn in array order (no sorting). */
19
21
  data?: ChartLineDataItem[];
20
22
  /** Chart.js-style datasets for multi-series use. If provided, takes precedence over `data`. */
21
- datasets?: ChartDataset<"line", (number | { x: string | number | Date; y: number; })[]>[] | undefined;
23
+ datasets?: ChartDataset<"line", ChartLinePoint[]>[] | undefined;
22
24
  /** Optional explicit labels for the x-axis (category mode). If omitted labels are derived from `data` */
23
25
  labels?: (string | number)[] | undefined;
24
26
  /** Custom color palette (CSS variable names or color strings). */
@@ -41,7 +43,9 @@ This value is passed down to external scales to determine their 1:1 Figma design
41
43
  At this reference size, scales render at native size; above/below they scale proportionally.
42
44
  Default: 384 (matches Figma design baseline). */
43
45
  scaleReferenceSize?: number;
44
- /** X-axis mode: 'category' for labeled data points, 'time' for time-based data. */
46
+ /** X-axis mode: 'category' for labeled, evenly spaced data points; 'time'
47
+ for time-based data positioned proportionally; 'number' for plain
48
+ numeric x-values. */
45
49
  xAxisType?: XAxisType;
46
50
  /** Single y-axis position ('left' or 'right'). For multiple y-axes, use yAxes instead. */
47
51
  yAxisPosition?: YAxisPosition;
@@ -1,5 +1,5 @@
1
1
  import '@oicl/openbridge-webcomponents/dist/bars-graphs/area-graph/area-graph.js';
2
- import type { ChartLineDataItem, XAxisType, YAxisPosition, ChartLineYAxisConfig, LineMode, TimeDisplay } from '@oicl/openbridge-webcomponents/dist/building-blocks/chart-line/chart-line-base.js';
2
+ import type { ChartLineDataItem, ChartLinePoint, XAxisType, YAxisPosition, ChartLineYAxisConfig, LineMode, TimeDisplay } from '@oicl/openbridge-webcomponents/dist/building-blocks/chart-line/chart-line-base.js';
3
3
  import type { ChartDataset } from 'chart.js';
4
4
  import type { InstrumentState, Priority, FrameStyle, BorderRadiusPosition } from '@oicl/openbridge-webcomponents/dist/navigation-instruments/types.js';
5
5
  import type { AreaFillMode } from '@oicl/openbridge-webcomponents/dist/bars-graphs/area-graph/area-graph.js';
@@ -7,13 +7,12 @@ import type { Snippet } from 'svelte';
7
7
  export interface Props {
8
8
  class?: string;
9
9
  style?: string;
10
- /** Simple single-series data (array of {label, value}). */
10
+ /** Simple single-series data. `{label, value}` items for the category axis;
11
+ `{x, value}` items for time/number axes (x: epoch ms, ISO string, Date,
12
+ or Temporal object). Points are drawn in array order (no sorting). */
11
13
  data?: ChartLineDataItem[];
12
14
  /** Chart.js-style datasets for multi-series use. If provided, takes precedence over `data`. */
13
- datasets?: ChartDataset<"line", (number | {
14
- x: string | number | Date;
15
- y: number;
16
- })[]>[] | undefined;
15
+ datasets?: ChartDataset<"line", ChartLinePoint[]>[] | undefined;
17
16
  /** Optional explicit labels for the x-axis (category mode). If omitted labels are derived from `data` */
18
17
  labels?: (string | number)[] | undefined;
19
18
  /** Custom color palette (CSS variable names or color strings). */
@@ -36,7 +35,9 @@ This value is passed down to external scales to determine their 1:1 Figma design
36
35
  At this reference size, scales render at native size; above/below they scale proportionally.
37
36
  Default: 384 (matches Figma design baseline). */
38
37
  scaleReferenceSize?: number;
39
- /** X-axis mode: 'category' for labeled data points, 'time' for time-based data. */
38
+ /** X-axis mode: 'category' for labeled, evenly spaced data points; 'time'
39
+ for time-based data positioned proportionally; 'number' for plain
40
+ numeric x-values. */
40
41
  xAxisType?: XAxisType;
41
42
  /** Single y-axis position ('left' or 'right'). For multiple y-axes, use yAxes instead. */
42
43
  yAxisPosition?: YAxisPosition;
@@ -118,6 +119,7 @@ export interface Slots {
118
119
  type $$ComponentProps = Props & Events & Slots;
119
120
  declare const ObcAreaGraph: import("svelte").Component<$$ComponentProps, {
120
121
  ChartLineDataItem: typeof ChartLineDataItem;
122
+ ChartLinePoint: typeof ChartLinePoint;
121
123
  XAxisType: typeof XAxisType;
122
124
  YAxisPosition: typeof YAxisPosition;
123
125
  ChartLineYAxisConfig: typeof ChartLineYAxisConfig;
@@ -1,11 +1,11 @@
1
1
 
2
2
  <script lang="ts">
3
- export type {ChartLineDataItem, XAxisType, YAxisPosition, ChartLineYAxisConfig, LineMode, TimeDisplay} from '@oicl/openbridge-webcomponents/dist/building-blocks/chart-line/chart-line-base.js';
3
+ export type {ChartLineDataItem, ChartLinePoint, XAxisType, YAxisPosition, ChartLineYAxisConfig, LineMode, TimeDisplay} from '@oicl/openbridge-webcomponents/dist/building-blocks/chart-line/chart-line-base.js';
4
4
  export type {ChartDataset} from 'chart.js';
5
5
  export type {InstrumentState, Priority, FrameStyle, BorderRadiusPosition} from '@oicl/openbridge-webcomponents/dist/navigation-instruments/types.js';
6
6
  import '@oicl/openbridge-webcomponents/dist/bars-graphs/line-graph/line-graph.js';
7
7
  import { setProperties } from "../../util.js";
8
- import type {ChartLineDataItem, XAxisType, YAxisPosition, ChartLineYAxisConfig, LineMode, TimeDisplay} from '@oicl/openbridge-webcomponents/dist/building-blocks/chart-line/chart-line-base.js';
8
+ import type {ChartLineDataItem, ChartLinePoint, XAxisType, YAxisPosition, ChartLineYAxisConfig, LineMode, TimeDisplay} from '@oicl/openbridge-webcomponents/dist/building-blocks/chart-line/chart-line-base.js';
9
9
  import type {ChartDataset} from 'chart.js';
10
10
  import type {InstrumentState, Priority, FrameStyle, BorderRadiusPosition} from '@oicl/openbridge-webcomponents/dist/navigation-instruments/types.js';
11
11
  import type { Snippet } from 'svelte';
@@ -13,10 +13,12 @@ import type {InstrumentState, Priority, FrameStyle, BorderRadiusPosition} from '
13
13
  export interface Props {
14
14
  class?: string;
15
15
  style?: string;
16
- /** Simple single-series data (array of {label, value}). */
16
+ /** Simple single-series data. `{label, value}` items for the category axis;
17
+ `{x, value}` items for time/number axes (x: epoch ms, ISO string, Date,
18
+ or Temporal object). Points are drawn in array order (no sorting). */
17
19
  data?: ChartLineDataItem[];
18
20
  /** Chart.js-style datasets for multi-series use. If provided, takes precedence over `data`. */
19
- datasets?: ChartDataset<"line", (number | { x: string | number | Date; y: number; })[]>[] | undefined;
21
+ datasets?: ChartDataset<"line", ChartLinePoint[]>[] | undefined;
20
22
  /** Optional explicit labels for the x-axis (category mode). If omitted labels are derived from `data` */
21
23
  labels?: (string | number)[] | undefined;
22
24
  /** Custom color palette (CSS variable names or color strings). */
@@ -39,7 +41,9 @@ This value is passed down to external scales to determine their 1:1 Figma design
39
41
  At this reference size, scales render at native size; above/below they scale proportionally.
40
42
  Default: 384 (matches Figma design baseline). */
41
43
  scaleReferenceSize?: number;
42
- /** X-axis mode: 'category' for labeled data points, 'time' for time-based data. */
44
+ /** X-axis mode: 'category' for labeled, evenly spaced data points; 'time'
45
+ for time-based data positioned proportionally; 'number' for plain
46
+ numeric x-values. */
43
47
  xAxisType?: XAxisType;
44
48
  /** Single y-axis position ('left' or 'right'). For multiple y-axes, use yAxes instead. */
45
49
  yAxisPosition?: YAxisPosition;
@@ -1,18 +1,17 @@
1
1
  import '@oicl/openbridge-webcomponents/dist/bars-graphs/line-graph/line-graph.js';
2
- import type { ChartLineDataItem, XAxisType, YAxisPosition, ChartLineYAxisConfig, LineMode, TimeDisplay } from '@oicl/openbridge-webcomponents/dist/building-blocks/chart-line/chart-line-base.js';
2
+ import type { ChartLineDataItem, ChartLinePoint, XAxisType, YAxisPosition, ChartLineYAxisConfig, LineMode, TimeDisplay } from '@oicl/openbridge-webcomponents/dist/building-blocks/chart-line/chart-line-base.js';
3
3
  import type { ChartDataset } from 'chart.js';
4
4
  import type { InstrumentState, Priority, FrameStyle, BorderRadiusPosition } from '@oicl/openbridge-webcomponents/dist/navigation-instruments/types.js';
5
5
  import type { Snippet } from 'svelte';
6
6
  export interface Props {
7
7
  class?: string;
8
8
  style?: string;
9
- /** Simple single-series data (array of {label, value}). */
9
+ /** Simple single-series data. `{label, value}` items for the category axis;
10
+ `{x, value}` items for time/number axes (x: epoch ms, ISO string, Date,
11
+ or Temporal object). Points are drawn in array order (no sorting). */
10
12
  data?: ChartLineDataItem[];
11
13
  /** Chart.js-style datasets for multi-series use. If provided, takes precedence over `data`. */
12
- datasets?: ChartDataset<"line", (number | {
13
- x: string | number | Date;
14
- y: number;
15
- })[]>[] | undefined;
14
+ datasets?: ChartDataset<"line", ChartLinePoint[]>[] | undefined;
16
15
  /** Optional explicit labels for the x-axis (category mode). If omitted labels are derived from `data` */
17
16
  labels?: (string | number)[] | undefined;
18
17
  /** Custom color palette (CSS variable names or color strings). */
@@ -35,7 +34,9 @@ This value is passed down to external scales to determine their 1:1 Figma design
35
34
  At this reference size, scales render at native size; above/below they scale proportionally.
36
35
  Default: 384 (matches Figma design baseline). */
37
36
  scaleReferenceSize?: number;
38
- /** X-axis mode: 'category' for labeled data points, 'time' for time-based data. */
37
+ /** X-axis mode: 'category' for labeled, evenly spaced data points; 'time'
38
+ for time-based data positioned proportionally; 'number' for plain
39
+ numeric x-values. */
39
40
  xAxisType?: XAxisType;
40
41
  /** Single y-axis position ('left' or 'right'). For multiple y-axes, use yAxes instead. */
41
42
  yAxisPosition?: YAxisPosition;
@@ -109,6 +110,7 @@ export interface Slots {
109
110
  type $$ComponentProps = Props & Events & Slots;
110
111
  declare const ObcLineGraph: import("svelte").Component<$$ComponentProps, {
111
112
  ChartLineDataItem: typeof ChartLineDataItem;
113
+ ChartLinePoint: typeof ChartLinePoint;
112
114
  XAxisType: typeof XAxisType;
113
115
  YAxisPosition: typeof YAxisPosition;
114
116
  ChartLineYAxisConfig: typeof ChartLineYAxisConfig;
@@ -1,11 +1,11 @@
1
1
 
2
2
  <script lang="ts">
3
- export type {ChartLineDataItem, XAxisType, YAxisPosition, ChartLineYAxisConfig, LineMode, TimeDisplay} from '@oicl/openbridge-webcomponents/dist/building-blocks/chart-line/chart-line-base.js';
3
+ export type {ChartLineDataItem, ChartLinePoint, XAxisType, YAxisPosition, ChartLineYAxisConfig, LineMode, TimeDisplay} from '@oicl/openbridge-webcomponents/dist/building-blocks/chart-line/chart-line-base.js';
4
4
  export type {ChartDataset} from 'chart.js';
5
5
  export type {InstrumentState, Priority, FrameStyle, BorderRadiusPosition} from '@oicl/openbridge-webcomponents/dist/navigation-instruments/types.js';
6
6
  import '@oicl/openbridge-webcomponents/dist/building-blocks/chart-line/chart-line-base.js';
7
7
  import { setProperties } from "../../util.js";
8
- import type {ChartLineDataItem, XAxisType, YAxisPosition, ChartLineYAxisConfig, LineMode, TimeDisplay} from '@oicl/openbridge-webcomponents/dist/building-blocks/chart-line/chart-line-base.js';
8
+ import type {ChartLineDataItem, ChartLinePoint, XAxisType, YAxisPosition, ChartLineYAxisConfig, LineMode, TimeDisplay} from '@oicl/openbridge-webcomponents/dist/building-blocks/chart-line/chart-line-base.js';
9
9
  import type {ChartDataset} from 'chart.js';
10
10
  import type {InstrumentState, Priority, FrameStyle, BorderRadiusPosition} from '@oicl/openbridge-webcomponents/dist/navigation-instruments/types.js';
11
11
  import type { Snippet } from 'svelte';
@@ -13,10 +13,12 @@ import type {InstrumentState, Priority, FrameStyle, BorderRadiusPosition} from '
13
13
  export interface Props {
14
14
  class?: string;
15
15
  style?: string;
16
- /** Simple single-series data (array of {label, value}). */
16
+ /** Simple single-series data. `{label, value}` items for the category axis;
17
+ `{x, value}` items for time/number axes (x: epoch ms, ISO string, Date,
18
+ or Temporal object). Points are drawn in array order (no sorting). */
17
19
  data?: ChartLineDataItem[];
18
20
  /** Chart.js-style datasets for multi-series use. If provided, takes precedence over `data`. */
19
- datasets?: ChartDataset<"line", (number | { x: string | number | Date; y: number; })[]>[] | undefined;
21
+ datasets?: ChartDataset<"line", ChartLinePoint[]>[] | undefined;
20
22
  /** Optional explicit labels for the x-axis (category mode). If omitted labels are derived from `data` */
21
23
  labels?: (string | number)[] | undefined;
22
24
  /** Custom color palette (CSS variable names or color strings). */
@@ -39,7 +41,9 @@ This value is passed down to external scales to determine their 1:1 Figma design
39
41
  At this reference size, scales render at native size; above/below they scale proportionally.
40
42
  Default: 384 (matches Figma design baseline). */
41
43
  scaleReferenceSize?: number;
42
- /** X-axis mode: 'category' for labeled data points, 'time' for time-based data. */
44
+ /** X-axis mode: 'category' for labeled, evenly spaced data points; 'time'
45
+ for time-based data positioned proportionally; 'number' for plain
46
+ numeric x-values. */
43
47
  xAxisType?: XAxisType;
44
48
  /** Single y-axis position ('left' or 'right'). For multiple y-axes, use yAxes instead. */
45
49
  yAxisPosition?: YAxisPosition;
@@ -1,18 +1,17 @@
1
1
  import '@oicl/openbridge-webcomponents/dist/building-blocks/chart-line/chart-line-base.js';
2
- import type { ChartLineDataItem, XAxisType, YAxisPosition, ChartLineYAxisConfig, LineMode, TimeDisplay } from '@oicl/openbridge-webcomponents/dist/building-blocks/chart-line/chart-line-base.js';
2
+ import type { ChartLineDataItem, ChartLinePoint, XAxisType, YAxisPosition, ChartLineYAxisConfig, LineMode, TimeDisplay } from '@oicl/openbridge-webcomponents/dist/building-blocks/chart-line/chart-line-base.js';
3
3
  import type { ChartDataset } from 'chart.js';
4
4
  import type { InstrumentState, Priority, FrameStyle, BorderRadiusPosition } from '@oicl/openbridge-webcomponents/dist/navigation-instruments/types.js';
5
5
  import type { Snippet } from 'svelte';
6
6
  export interface Props {
7
7
  class?: string;
8
8
  style?: string;
9
- /** Simple single-series data (array of {label, value}). */
9
+ /** Simple single-series data. `{label, value}` items for the category axis;
10
+ `{x, value}` items for time/number axes (x: epoch ms, ISO string, Date,
11
+ or Temporal object). Points are drawn in array order (no sorting). */
10
12
  data?: ChartLineDataItem[];
11
13
  /** Chart.js-style datasets for multi-series use. If provided, takes precedence over `data`. */
12
- datasets?: ChartDataset<"line", (number | {
13
- x: string | number | Date;
14
- y: number;
15
- })[]>[] | undefined;
14
+ datasets?: ChartDataset<"line", ChartLinePoint[]>[] | undefined;
16
15
  /** Optional explicit labels for the x-axis (category mode). If omitted labels are derived from `data` */
17
16
  labels?: (string | number)[] | undefined;
18
17
  /** Custom color palette (CSS variable names or color strings). */
@@ -35,7 +34,9 @@ This value is passed down to external scales to determine their 1:1 Figma design
35
34
  At this reference size, scales render at native size; above/below they scale proportionally.
36
35
  Default: 384 (matches Figma design baseline). */
37
36
  scaleReferenceSize?: number;
38
- /** X-axis mode: 'category' for labeled data points, 'time' for time-based data. */
37
+ /** X-axis mode: 'category' for labeled, evenly spaced data points; 'time'
38
+ for time-based data positioned proportionally; 'number' for plain
39
+ numeric x-values. */
39
40
  xAxisType?: XAxisType;
40
41
  /** Single y-axis position ('left' or 'right'). For multiple y-axes, use yAxes instead. */
41
42
  yAxisPosition?: YAxisPosition;
@@ -109,6 +110,7 @@ export interface Slots {
109
110
  type $$ComponentProps = Props & Events & Slots;
110
111
  declare const ObcChartLineBase: import("svelte").Component<$$ComponentProps, {
111
112
  ChartLineDataItem: typeof ChartLineDataItem;
113
+ ChartLinePoint: typeof ChartLinePoint;
112
114
  XAxisType: typeof XAxisType;
113
115
  YAxisPosition: typeof YAxisPosition;
114
116
  ChartLineYAxisConfig: typeof ChartLineYAxisConfig;
package/dist/index.d.ts CHANGED
@@ -2293,10 +2293,8 @@ export { default as ObcPropulsionAzimuthIndicator } from './navigation-instrumen
2293
2293
  export { default as ObcTunnelThruster } from './navigation-instruments/propulsion-tunnel-thruster/ObcTunnelThruster.svelte';
2294
2294
  export { default as ObcRateOfTurn } from './navigation-instruments/rate-of-turn/ObcRateOfTurn.svelte';
2295
2295
  export { default as ObcReadout } from './navigation-instruments/readout/ObcReadout.svelte';
2296
- export { default as ObcReadoutAdvice } from './navigation-instruments/readout-advice/ObcReadoutAdvice.svelte';
2297
2296
  export { default as ObcReadoutList } from './navigation-instruments/readout-list/ObcReadoutList.svelte';
2298
2297
  export { default as ObcReadoutListItem } from './navigation-instruments/readout-list-item/ObcReadoutListItem.svelte';
2299
- export { default as ObcReadoutSetpoint } from './navigation-instruments/readout-setpoint/ObcReadoutSetpoint.svelte';
2300
2298
  export { default as ObcRoll } from './navigation-instruments/roll/ObcRoll.svelte';
2301
2299
  export { default as ObcRollIndicator } from './navigation-instruments/roll-indicator/ObcRollIndicator.svelte';
2302
2300
  export { default as ObcRotIndicator } from './navigation-instruments/rot-indicator/ObcRotIndicator.svelte';
package/dist/index.js CHANGED
@@ -2293,10 +2293,8 @@ export { default as ObcPropulsionAzimuthIndicator } from './navigation-instrumen
2293
2293
  export { default as ObcTunnelThruster } from './navigation-instruments/propulsion-tunnel-thruster/ObcTunnelThruster.svelte';
2294
2294
  export { default as ObcRateOfTurn } from './navigation-instruments/rate-of-turn/ObcRateOfTurn.svelte';
2295
2295
  export { default as ObcReadout } from './navigation-instruments/readout/ObcReadout.svelte';
2296
- export { default as ObcReadoutAdvice } from './navigation-instruments/readout-advice/ObcReadoutAdvice.svelte';
2297
2296
  export { default as ObcReadoutList } from './navigation-instruments/readout-list/ObcReadoutList.svelte';
2298
2297
  export { default as ObcReadoutListItem } from './navigation-instruments/readout-list-item/ObcReadoutListItem.svelte';
2299
- export { default as ObcReadoutSetpoint } from './navigation-instruments/readout-setpoint/ObcReadoutSetpoint.svelte';
2300
2298
  export { default as ObcRoll } from './navigation-instruments/roll/ObcRoll.svelte';
2301
2299
  export { default as ObcRollIndicator } from './navigation-instruments/roll-indicator/ObcRollIndicator.svelte';
2302
2300
  export { default as ObcRotIndicator } from './navigation-instruments/rot-indicator/ObcRotIndicator.svelte';
@@ -2,7 +2,7 @@
2
2
  <script lang="ts">
3
3
  export type {CommandStatus} from '@oicl/openbridge-webcomponents/dist/navigation-instruments/badge-command/badge-command.js';
4
4
  export type {AzimuthThrusterLabeledSize} from '@oicl/openbridge-webcomponents/dist/navigation-instruments/azimuth-thruster-labeled/azimuth-thruster-labeled.js';
5
- export type {ReadoutVariant} from '@oicl/openbridge-webcomponents/dist/navigation-instruments/readout/readout.js';
5
+ export type {ReadoutBlockSize} from '@oicl/openbridge-webcomponents/dist/building-blocks/readout-block/readout-block.js';
6
6
  export type {AngleAdvice} from '@oicl/openbridge-webcomponents/dist/navigation-instruments/watch/advice.js';
7
7
  export type {LinearAdvice} from '@oicl/openbridge-webcomponents/dist/navigation-instruments/thruster/advice.js';
8
8
  export type {TickmarkStyle} from '@oicl/openbridge-webcomponents/dist/navigation-instruments/watch/tickmark.js';
@@ -11,7 +11,7 @@ export type {PropellerType} from '@oicl/openbridge-webcomponents/dist/navigation
11
11
  import { setProperties } from "../../util.js";
12
12
  import type {CommandStatus} from '@oicl/openbridge-webcomponents/dist/navigation-instruments/badge-command/badge-command.js';
13
13
  import type {AzimuthThrusterLabeledSize} from '@oicl/openbridge-webcomponents/dist/navigation-instruments/azimuth-thruster-labeled/azimuth-thruster-labeled.js';
14
- import type {ReadoutVariant} from '@oicl/openbridge-webcomponents/dist/navigation-instruments/readout/readout.js';
14
+ import type {ReadoutBlockSize} from '@oicl/openbridge-webcomponents/dist/building-blocks/readout-block/readout-block.js';
15
15
  import type {AngleAdvice} from '@oicl/openbridge-webcomponents/dist/navigation-instruments/watch/advice.js';
16
16
  import type {LinearAdvice} from '@oicl/openbridge-webcomponents/dist/navigation-instruments/thruster/advice.js';
17
17
  import type {TickmarkStyle} from '@oicl/openbridge-webcomponents/dist/navigation-instruments/watch/tickmark.js';
@@ -24,7 +24,7 @@ import type {PropellerType} from '@oicl/openbridge-webcomponents/dist/navigation
24
24
  label?: string;
25
25
  commandStatus?: CommandStatus;
26
26
  size?: AzimuthThrusterLabeledSize;
27
- readoutVariant?: ReadoutVariant;
27
+ readoutSize?: ReadoutBlockSize;
28
28
  angle?: number;
29
29
  angleSetpoint?: number | undefined;
30
30
  newAngleSetpoint?: number | undefined;
@@ -1,7 +1,7 @@
1
1
  import '@oicl/openbridge-webcomponents/dist/navigation-instruments/azimuth-thruster-labeled/azimuth-thruster-labeled.js';
2
2
  import type { CommandStatus } from '@oicl/openbridge-webcomponents/dist/navigation-instruments/badge-command/badge-command.js';
3
3
  import type { AzimuthThrusterLabeledSize } from '@oicl/openbridge-webcomponents/dist/navigation-instruments/azimuth-thruster-labeled/azimuth-thruster-labeled.js';
4
- import type { ReadoutVariant } from '@oicl/openbridge-webcomponents/dist/navigation-instruments/readout/readout.js';
4
+ import type { ReadoutBlockSize } from '@oicl/openbridge-webcomponents/dist/building-blocks/readout-block/readout-block.js';
5
5
  import type { AngleAdvice } from '@oicl/openbridge-webcomponents/dist/navigation-instruments/watch/advice.js';
6
6
  import type { LinearAdvice } from '@oicl/openbridge-webcomponents/dist/navigation-instruments/thruster/advice.js';
7
7
  import type { TickmarkStyle } from '@oicl/openbridge-webcomponents/dist/navigation-instruments/watch/tickmark.js';
@@ -13,7 +13,7 @@ export interface Props {
13
13
  label?: string;
14
14
  commandStatus?: CommandStatus;
15
15
  size?: AzimuthThrusterLabeledSize;
16
- readoutVariant?: ReadoutVariant;
16
+ readoutSize?: ReadoutBlockSize;
17
17
  angle?: number;
18
18
  angleSetpoint?: number | undefined;
19
19
  newAngleSetpoint?: number | undefined;
@@ -46,7 +46,7 @@ type $$ComponentProps = Props & Events & Slots;
46
46
  declare const ObcAzimuthThrusterLabeled: import("svelte").Component<$$ComponentProps, {
47
47
  CommandStatus: typeof CommandStatus;
48
48
  AzimuthThrusterLabeledSize: typeof AzimuthThrusterLabeledSize;
49
- ReadoutVariant: typeof ReadoutVariant;
49
+ ReadoutBlockSize: typeof ReadoutBlockSize;
50
50
  AngleAdvice: typeof AngleAdvice;
51
51
  LinearAdvice: typeof LinearAdvice;
52
52
  TickmarkStyle: typeof TickmarkStyle;
@@ -1,13 +1,13 @@
1
1
 
2
2
  <script lang="ts">
3
- export type {ChartLineDataItem, XAxisType, YAxisPosition, ChartLineYAxisConfig, LineMode, TimeDisplay} from '@oicl/openbridge-webcomponents/dist/building-blocks/chart-line/chart-line-base.js';
3
+ export type {ChartLineDataItem, ChartLinePoint, XAxisType, YAxisPosition, ChartLineYAxisConfig, LineMode, TimeDisplay} from '@oicl/openbridge-webcomponents/dist/building-blocks/chart-line/chart-line-base.js';
4
4
  export type {ChartDataset} from 'chart.js';
5
5
  export type {InstrumentState, Priority, FrameStyle, BorderRadiusPosition} from '@oicl/openbridge-webcomponents/dist/navigation-instruments/types.js';
6
6
  export type {ScaleType, FillMode} from '@oicl/openbridge-webcomponents/dist/building-blocks/bar-vertical/bar-vertical.js';
7
7
  export type {LinearAdvice} from '@oicl/openbridge-webcomponents/dist/building-blocks/instrument-linear/advice.js';
8
8
  import '@oicl/openbridge-webcomponents/dist/navigation-instruments/gauge-trend/gauge-trend.js';
9
9
  import { setProperties } from "../../util.js";
10
- import type {ChartLineDataItem, XAxisType, YAxisPosition, ChartLineYAxisConfig, LineMode, TimeDisplay} from '@oicl/openbridge-webcomponents/dist/building-blocks/chart-line/chart-line-base.js';
10
+ import type {ChartLineDataItem, ChartLinePoint, XAxisType, YAxisPosition, ChartLineYAxisConfig, LineMode, TimeDisplay} from '@oicl/openbridge-webcomponents/dist/building-blocks/chart-line/chart-line-base.js';
11
11
  import type {ChartDataset} from 'chart.js';
12
12
  import type {InstrumentState, Priority, FrameStyle, BorderRadiusPosition} from '@oicl/openbridge-webcomponents/dist/navigation-instruments/types.js';
13
13
  import type {ScaleType, FillMode} from '@oicl/openbridge-webcomponents/dist/building-blocks/bar-vertical/bar-vertical.js';
@@ -38,10 +38,12 @@ regardless of instrument state. */
38
38
  setpointOverride?: boolean;
39
39
  /** Enable CSS-animated confirm transition. */
40
40
  animateSetpoint?: boolean;
41
- /** Simple single-series data (array of {label, value}). */
41
+ /** Simple single-series data. `{label, value}` items for the category axis;
42
+ `{x, value}` items for time/number axes (x: epoch ms, ISO string, Date,
43
+ or Temporal object). Points are drawn in array order (no sorting). */
42
44
  data?: ChartLineDataItem[];
43
45
  /** Chart.js-style datasets for multi-series use. If provided, takes precedence over `data`. */
44
- datasets?: ChartDataset<"line", (number | { x: string | number | Date; y: number; })[]>[] | undefined;
46
+ datasets?: ChartDataset<"line", ChartLinePoint[]>[] | undefined;
45
47
  /** Optional explicit labels for the x-axis (category mode). If omitted labels are derived from `data` */
46
48
  labels?: (string | number)[] | undefined;
47
49
  /** Custom color palette (CSS variable names or color strings). */
@@ -64,7 +66,9 @@ This value is passed down to external scales to determine their 1:1 Figma design
64
66
  At this reference size, scales render at native size; above/below they scale proportionally.
65
67
  Default: 384 (matches Figma design baseline). */
66
68
  scaleReferenceSize?: number;
67
- /** X-axis mode: 'category' for labeled data points, 'time' for time-based data. */
69
+ /** X-axis mode: 'category' for labeled, evenly spaced data points; 'time'
70
+ for time-based data positioned proportionally; 'number' for plain
71
+ numeric x-values. */
68
72
  xAxisType?: XAxisType;
69
73
  /** Single y-axis position ('left' or 'right'). For multiple y-axes, use yAxes instead. */
70
74
  yAxisPosition?: YAxisPosition;
@@ -1,5 +1,5 @@
1
1
  import '@oicl/openbridge-webcomponents/dist/navigation-instruments/gauge-trend/gauge-trend.js';
2
- import type { ChartLineDataItem, XAxisType, YAxisPosition, ChartLineYAxisConfig, LineMode, TimeDisplay } from '@oicl/openbridge-webcomponents/dist/building-blocks/chart-line/chart-line-base.js';
2
+ import type { ChartLineDataItem, ChartLinePoint, XAxisType, YAxisPosition, ChartLineYAxisConfig, LineMode, TimeDisplay } from '@oicl/openbridge-webcomponents/dist/building-blocks/chart-line/chart-line-base.js';
3
3
  import type { ChartDataset } from 'chart.js';
4
4
  import type { InstrumentState, Priority, FrameStyle, BorderRadiusPosition } from '@oicl/openbridge-webcomponents/dist/navigation-instruments/types.js';
5
5
  import type { ScaleType, FillMode } from '@oicl/openbridge-webcomponents/dist/building-blocks/bar-vertical/bar-vertical.js';
@@ -29,13 +29,12 @@ regardless of instrument state. */
29
29
  setpointOverride?: boolean;
30
30
  /** Enable CSS-animated confirm transition. */
31
31
  animateSetpoint?: boolean;
32
- /** Simple single-series data (array of {label, value}). */
32
+ /** Simple single-series data. `{label, value}` items for the category axis;
33
+ `{x, value}` items for time/number axes (x: epoch ms, ISO string, Date,
34
+ or Temporal object). Points are drawn in array order (no sorting). */
33
35
  data?: ChartLineDataItem[];
34
36
  /** Chart.js-style datasets for multi-series use. If provided, takes precedence over `data`. */
35
- datasets?: ChartDataset<"line", (number | {
36
- x: string | number | Date;
37
- y: number;
38
- })[]>[] | undefined;
37
+ datasets?: ChartDataset<"line", ChartLinePoint[]>[] | undefined;
39
38
  /** Optional explicit labels for the x-axis (category mode). If omitted labels are derived from `data` */
40
39
  labels?: (string | number)[] | undefined;
41
40
  /** Custom color palette (CSS variable names or color strings). */
@@ -58,7 +57,9 @@ This value is passed down to external scales to determine their 1:1 Figma design
58
57
  At this reference size, scales render at native size; above/below they scale proportionally.
59
58
  Default: 384 (matches Figma design baseline). */
60
59
  scaleReferenceSize?: number;
61
- /** X-axis mode: 'category' for labeled data points, 'time' for time-based data. */
60
+ /** X-axis mode: 'category' for labeled, evenly spaced data points; 'time'
61
+ for time-based data positioned proportionally; 'number' for plain
62
+ numeric x-values. */
62
63
  xAxisType?: XAxisType;
63
64
  /** Single y-axis position ('left' or 'right'). For multiple y-axes, use yAxes instead. */
64
65
  yAxisPosition?: YAxisPosition;
@@ -199,6 +200,7 @@ export interface Slots {
199
200
  type $$ComponentProps = Props & Events & Slots;
200
201
  declare const ObcGaugeTrend: import("svelte").Component<$$ComponentProps, {
201
202
  ChartLineDataItem: typeof ChartLineDataItem;
203
+ ChartLinePoint: typeof ChartLinePoint;
202
204
  XAxisType: typeof XAxisType;
203
205
  YAxisPosition: typeof YAxisPosition;
204
206
  ChartLineYAxisConfig: typeof ChartLineYAxisConfig;
@@ -1,119 +1,83 @@
1
1
 
2
2
  <script lang="ts">
3
- export type {ReadoutSourceType} from '@oicl/openbridge-webcomponents/dist/navigation-instruments/readout/readout-source.js';
4
- export type {ReadoutVariant, ReadoutDataState, ReadoutSetpointInteraction, ReadoutDirection, ReadoutStackVerticalAlignment} from '@oicl/openbridge-webcomponents/dist/navigation-instruments/readout/readout.js';
3
+ export type {ReadoutBlockSize, ReadoutBlockDataQuality} from '@oicl/openbridge-webcomponents/dist/building-blocks/readout-block/readout-block.js';
5
4
  export type {Priority} from '@oicl/openbridge-webcomponents/dist/navigation-instruments/types.js';
6
- export type {ReadoutSetpointSize, ReadoutSetpointFormat} from '@oicl/openbridge-webcomponents/dist/navigation-instruments/readout-setpoint/readout-setpoint.js';
5
+ export type {ReadoutDirection, ReadoutStacking, ReadoutAlignment, ReadoutSourceOptions} from '@oicl/openbridge-webcomponents/dist/navigation-instruments/readout/readout.js';
7
6
  export type {AlertFrameConfig} from '@oicl/openbridge-webcomponents/dist/components/alert-frame/alert-frame.js';
8
- export type {ReadoutAdviceFormat, ReadoutAdviceState} from '@oicl/openbridge-webcomponents/dist/navigation-instruments/readout-advice/readout-advice.js';
7
+ export type {ReadoutValueOptions, ReadoutSetpointOptions, ReadoutAdviceOptions, ReadoutReserverOptions} from '@oicl/openbridge-webcomponents/dist/navigation-instruments/readout-list-item/readout-list-item.js';
9
8
  import '@oicl/openbridge-webcomponents/dist/navigation-instruments/readout/readout.js';
10
9
  import { setProperties } from "../../util.js";
11
- import type {ReadoutSourceType} from '@oicl/openbridge-webcomponents/dist/navigation-instruments/readout/readout-source.js';
12
- import type {ReadoutVariant, ReadoutDataState, ReadoutSetpointInteraction, ReadoutDirection, ReadoutStackVerticalAlignment} from '@oicl/openbridge-webcomponents/dist/navigation-instruments/readout/readout.js';
10
+ import type {ReadoutBlockSize, ReadoutBlockDataQuality} from '@oicl/openbridge-webcomponents/dist/building-blocks/readout-block/readout-block.js';
13
11
  import type {Priority} from '@oicl/openbridge-webcomponents/dist/navigation-instruments/types.js';
14
- import type {ReadoutSetpointSize, ReadoutSetpointFormat} from '@oicl/openbridge-webcomponents/dist/navigation-instruments/readout-setpoint/readout-setpoint.js';
12
+ import type {ReadoutDirection, ReadoutStacking, ReadoutAlignment, ReadoutSourceOptions} from '@oicl/openbridge-webcomponents/dist/navigation-instruments/readout/readout.js';
15
13
  import type {AlertFrameConfig} from '@oicl/openbridge-webcomponents/dist/components/alert-frame/alert-frame.js';
16
- import type {ReadoutAdviceFormat, ReadoutAdviceState} from '@oicl/openbridge-webcomponents/dist/navigation-instruments/readout-advice/readout-advice.js';
14
+ import type {ReadoutValueOptions, ReadoutSetpointOptions, ReadoutAdviceOptions, ReadoutReserverOptions} from '@oicl/openbridge-webcomponents/dist/navigation-instruments/readout-list-item/readout-list-item.js';
17
15
  import type { Snippet } from 'svelte';
18
16
 
19
17
  export interface Props {
20
18
  class?: string;
21
19
  style?: string;
22
- value?: number | undefined;
23
- hasSetpoint?: boolean;
24
- setpointValue?: number | undefined;
25
- variant?: ReadoutVariant;
26
- hasDegree?: boolean;
27
- label?: string;
20
+ label?: string | undefined;
28
21
  unit?: string | undefined;
29
22
  src?: string | undefined;
30
- off?: boolean;
31
- valuePriority?: Priority | undefined;
32
- dataState?: ReadoutDataState;
33
- setpointInteraction?: ReadoutSetpointInteraction;
34
- direction?: ReadoutDirection;
35
- /** Override the size of the setpoint segment (when `hasSetpoint` is true).
36
-
37
- - In `alwaysVisible` and `popUp` interaction modes: any size value applies.
38
- - In `flipFlop` mode: the override is honored only when strictly smaller
39
- than the variant's base size (medium for `regular`, large for
40
- `enhanced`/`stack`). Larger overrides are ignored, falling back to the
41
- default secondary size to preserve the flip-flop visual effect and
42
- prevent setpoint/value overlap.
43
-
44
- When unset, the setpoint size is derived from `variant` (and adjusted for
45
- multi-line formats). */
46
- setpointSize?: ReadoutSetpointSize | undefined;
47
- alignment?: ReadoutStackVerticalAlignment;
48
- hug?: boolean;
49
- hasSetpointDivider?: boolean;
50
- hasSourceDivider?: boolean;
51
- showZeroPadding?: boolean;
23
+ /** Layout switch: `false` renders a deliberately value-less (label-only)
24
+ readout that hugs its remaining parts. For a temporarily missing value
25
+ keep `hasValue` and set `value` to `null` instead — the dash keeps the
26
+ value block at full size, so the layout does not shift when data arrives. */
27
+ hasValue?: boolean;
28
+ value?: number | null;
29
+ /** Render the value as `offText` (e.g. equipment powered down). Affects the value only. */
30
+ off?: boolean;
31
+ /** Text shown in place of the value when `off` is true. */
32
+ offText?: string;
33
+ hasSetpoint?: boolean;
34
+ setpoint?: number | undefined;
35
+ hasAdvice?: boolean;
36
+ advice?: number | undefined;
37
+ size?: ReadoutBlockSize | undefined;
38
+ priority?: Priority | undefined;
39
+ direction?: ReadoutDirection | undefined;
40
+ stacking?: ReadoutStacking | undefined;
41
+ alignment?: ReadoutAlignment | undefined;
42
+ hasDegree?: boolean;
43
+ hasDegreeSpacer?: boolean;
52
44
  fractionDigits?: number;
53
- minValueLength?: number;
54
- valueHasHintedZeros?: boolean;
55
- labelOnly?: boolean;
56
- hasSrcPicker?: boolean;
57
- sourceDeltaValue?: number;
58
- sourceType?: ReadoutSourceType | undefined;
59
- hasLeadingIcon?: boolean;
45
+ maxDigits?: number;
46
+ dataQuality?: ReadoutBlockDataQuality | undefined;
60
47
  alert?: boolean | AlertFrameConfig;
61
- sourceHug?: boolean;
62
- hasSourceLeadingIcon?: boolean;
63
- hasSourceTrailingIcon?: boolean;
64
- hasAdvice?: boolean;
65
- adviceValue?: number | undefined;
66
- adviceFormat?: ReadoutAdviceFormat;
67
- adviceState?: ReadoutAdviceState;
68
- adviceSecondaryValue?: number | undefined;
69
- adviceDescription?: string;
70
- adviceHasHintedZeros?: boolean;
71
- setpointFormat?: ReadoutSetpointFormat;
72
- setpointSecondaryValue?: number | undefined;
73
- setpointDescription?: string;
74
- setpointHasHintedZeros?: boolean
48
+ valueOptions?: ReadoutValueOptions | undefined;
49
+ setpointOptions?: ReadoutSetpointOptions | undefined;
50
+ adviceOptions?: ReadoutAdviceOptions | undefined;
51
+ unitOptions?: ReadoutReserverOptions | undefined;
52
+ srcOptions?: ReadoutSourceOptions | undefined;
53
+ /** Development aid: outline the readout building blocks (red), the degree
54
+ columns (blue) and the degree spacer (green) so reserver widths / alignment
55
+ are visible. Off by default. */
56
+ showDebugOverlay?: boolean
75
57
  }
76
58
  export interface Events {
77
- onSourceFlyoutClick?: (event: CustomEvent<{src: string, sourceType?: ReadoutSourceType}>) => void;
78
- onSourceChange?: (event: CustomEvent<{value: string, label?: string}>) => void
59
+ onSourceChange?: (event: CustomEvent<{value: string, label?: string}>) => void;
60
+ onSourceFlyoutClick?: (event: CustomEvent<{src: string}>) => void
79
61
  }
80
62
  export interface Slots {
81
- advice?: Snippet;
82
- adviceIcon?: Snippet;
83
- setpoint?: Snippet;
63
+ valueIcon?: Snippet;
84
64
  setpointIcon?: Snippet;
85
- leadingIcon?: Snippet;
86
- valueSnippet?: Snippet;
87
- labelSnippet?: Snippet;
88
- unitSnippet?: Snippet;
89
- source?: Snippet;
65
+ adviceIcon?: Snippet;
90
66
  srcPickerContent?: Snippet
91
67
  }
92
- const {onSourceFlyoutClick, onSourceChange, class: className, style, advice, adviceIcon, setpoint, setpointIcon, leadingIcon, valueSnippet, labelSnippet, unitSnippet, source, srcPickerContent, ...props} = $props<Props & Events & Slots>();
68
+ const {onSourceChange, onSourceFlyoutClick, class: className, style, valueIcon, setpointIcon, adviceIcon, srcPickerContent, ...props} = $props<Props & Events & Slots>();
93
69
 
94
70
  </script>
95
71
  <obc-readout
96
72
  use:setProperties={props}
97
73
  class={className}
98
74
  style={style}
99
- onsource-flyout-click={onSourceFlyoutClick}
100
- onsource-change={onSourceChange} >
75
+ onsource-change={onSourceChange}
76
+ onsource-flyout-click={onSourceFlyoutClick} >
101
77
 
102
- {#if advice}
103
- <div slot="advice">
104
- {@render advice()}
105
- </div>
106
- {/if}
107
-
108
- {#if adviceIcon}
109
- <div slot="advice-icon">
110
- {@render adviceIcon()}
111
- </div>
112
- {/if}
113
-
114
- {#if setpoint}
115
- <div slot="setpoint">
116
- {@render setpoint()}
78
+ {#if valueIcon}
79
+ <div slot="value-icon">
80
+ {@render valueIcon()}
117
81
  </div>
118
82
  {/if}
119
83
 
@@ -123,33 +87,9 @@ setpointSize?: ReadoutSetpointSize | undefined;
123
87
  </div>
124
88
  {/if}
125
89
 
126
- {#if leadingIcon}
127
- <div slot="leading-icon">
128
- {@render leadingIcon()}
129
- </div>
130
- {/if}
131
-
132
- {#if valueSnippet}
133
- <div slot="value">
134
- {@render valueSnippet()}
135
- </div>
136
- {/if}
137
-
138
- {#if labelSnippet}
139
- <div slot="label">
140
- {@render labelSnippet()}
141
- </div>
142
- {/if}
143
-
144
- {#if unitSnippet}
145
- <div slot="unit">
146
- {@render unitSnippet()}
147
- </div>
148
- {/if}
149
-
150
- {#if source}
151
- <div slot="source">
152
- {@render source()}
90
+ {#if adviceIcon}
91
+ <div slot="advice-icon">
92
+ {@render adviceIcon()}
153
93
  </div>
154
94
  {/if}
155
95
 
@@ -1,104 +1,80 @@
1
1
  import '@oicl/openbridge-webcomponents/dist/navigation-instruments/readout/readout.js';
2
- import type { ReadoutSourceType } from '@oicl/openbridge-webcomponents/dist/navigation-instruments/readout/readout-source.js';
3
- import type { ReadoutVariant, ReadoutDataState, ReadoutSetpointInteraction, ReadoutDirection, ReadoutStackVerticalAlignment } from '@oicl/openbridge-webcomponents/dist/navigation-instruments/readout/readout.js';
2
+ import type { ReadoutBlockSize, ReadoutBlockDataQuality } from '@oicl/openbridge-webcomponents/dist/building-blocks/readout-block/readout-block.js';
4
3
  import type { Priority } from '@oicl/openbridge-webcomponents/dist/navigation-instruments/types.js';
5
- import type { ReadoutSetpointSize, ReadoutSetpointFormat } from '@oicl/openbridge-webcomponents/dist/navigation-instruments/readout-setpoint/readout-setpoint.js';
4
+ import type { ReadoutDirection, ReadoutStacking, ReadoutAlignment, ReadoutSourceOptions } from '@oicl/openbridge-webcomponents/dist/navigation-instruments/readout/readout.js';
6
5
  import type { AlertFrameConfig } from '@oicl/openbridge-webcomponents/dist/components/alert-frame/alert-frame.js';
7
- import type { ReadoutAdviceFormat, ReadoutAdviceState } from '@oicl/openbridge-webcomponents/dist/navigation-instruments/readout-advice/readout-advice.js';
6
+ import type { ReadoutValueOptions, ReadoutSetpointOptions, ReadoutAdviceOptions, ReadoutReserverOptions } from '@oicl/openbridge-webcomponents/dist/navigation-instruments/readout-list-item/readout-list-item.js';
8
7
  import type { Snippet } from 'svelte';
9
8
  export interface Props {
10
9
  class?: string;
11
10
  style?: string;
12
- value?: number | undefined;
13
- hasSetpoint?: boolean;
14
- setpointValue?: number | undefined;
15
- variant?: ReadoutVariant;
16
- hasDegree?: boolean;
17
- label?: string;
11
+ label?: string | undefined;
18
12
  unit?: string | undefined;
19
13
  src?: string | undefined;
14
+ /** Layout switch: `false` renders a deliberately value-less (label-only)
15
+ readout that hugs its remaining parts. For a temporarily missing value
16
+ keep `hasValue` and set `value` to `null` instead — the dash keeps the
17
+ value block at full size, so the layout does not shift when data arrives. */
18
+ hasValue?: boolean;
19
+ value?: number | null;
20
+ /** Render the value as `offText` (e.g. equipment powered down). Affects the value only. */
20
21
  off?: boolean;
21
- valuePriority?: Priority | undefined;
22
- dataState?: ReadoutDataState;
23
- setpointInteraction?: ReadoutSetpointInteraction;
24
- direction?: ReadoutDirection;
25
- /** Override the size of the setpoint segment (when `hasSetpoint` is true).
26
-
27
- - In `alwaysVisible` and `popUp` interaction modes: any size value applies.
28
- - In `flipFlop` mode: the override is honored only when strictly smaller
29
- than the variant's base size (medium for `regular`, large for
30
- `enhanced`/`stack`). Larger overrides are ignored, falling back to the
31
- default secondary size to preserve the flip-flop visual effect and
32
- prevent setpoint/value overlap.
33
-
34
- When unset, the setpoint size is derived from `variant` (and adjusted for
35
- multi-line formats). */
36
- setpointSize?: ReadoutSetpointSize | undefined;
37
- alignment?: ReadoutStackVerticalAlignment;
38
- hug?: boolean;
39
- hasSetpointDivider?: boolean;
40
- hasSourceDivider?: boolean;
41
- showZeroPadding?: boolean;
22
+ /** Text shown in place of the value when `off` is true. */
23
+ offText?: string;
24
+ hasSetpoint?: boolean;
25
+ setpoint?: number | undefined;
26
+ hasAdvice?: boolean;
27
+ advice?: number | undefined;
28
+ size?: ReadoutBlockSize | undefined;
29
+ priority?: Priority | undefined;
30
+ direction?: ReadoutDirection | undefined;
31
+ stacking?: ReadoutStacking | undefined;
32
+ alignment?: ReadoutAlignment | undefined;
33
+ hasDegree?: boolean;
34
+ hasDegreeSpacer?: boolean;
42
35
  fractionDigits?: number;
43
- minValueLength?: number;
44
- valueHasHintedZeros?: boolean;
45
- labelOnly?: boolean;
46
- hasSrcPicker?: boolean;
47
- sourceDeltaValue?: number;
48
- sourceType?: ReadoutSourceType | undefined;
49
- hasLeadingIcon?: boolean;
36
+ maxDigits?: number;
37
+ dataQuality?: ReadoutBlockDataQuality | undefined;
50
38
  alert?: boolean | AlertFrameConfig;
51
- sourceHug?: boolean;
52
- hasSourceLeadingIcon?: boolean;
53
- hasSourceTrailingIcon?: boolean;
54
- hasAdvice?: boolean;
55
- adviceValue?: number | undefined;
56
- adviceFormat?: ReadoutAdviceFormat;
57
- adviceState?: ReadoutAdviceState;
58
- adviceSecondaryValue?: number | undefined;
59
- adviceDescription?: string;
60
- adviceHasHintedZeros?: boolean;
61
- setpointFormat?: ReadoutSetpointFormat;
62
- setpointSecondaryValue?: number | undefined;
63
- setpointDescription?: string;
64
- setpointHasHintedZeros?: boolean;
39
+ valueOptions?: ReadoutValueOptions | undefined;
40
+ setpointOptions?: ReadoutSetpointOptions | undefined;
41
+ adviceOptions?: ReadoutAdviceOptions | undefined;
42
+ unitOptions?: ReadoutReserverOptions | undefined;
43
+ srcOptions?: ReadoutSourceOptions | undefined;
44
+ /** Development aid: outline the readout building blocks (red), the degree
45
+ columns (blue) and the degree spacer (green) so reserver widths / alignment
46
+ are visible. Off by default. */
47
+ showDebugOverlay?: boolean;
65
48
  }
66
49
  export interface Events {
67
- onSourceFlyoutClick?: (event: CustomEvent<{
68
- src: string;
69
- sourceType?: ReadoutSourceType;
70
- }>) => void;
71
50
  onSourceChange?: (event: CustomEvent<{
72
51
  value: string;
73
52
  label?: string;
74
53
  }>) => void;
54
+ onSourceFlyoutClick?: (event: CustomEvent<{
55
+ src: string;
56
+ }>) => void;
75
57
  }
76
58
  export interface Slots {
77
- advice?: Snippet;
78
- adviceIcon?: Snippet;
79
- setpoint?: Snippet;
59
+ valueIcon?: Snippet;
80
60
  setpointIcon?: Snippet;
81
- leadingIcon?: Snippet;
82
- valueSnippet?: Snippet;
83
- labelSnippet?: Snippet;
84
- unitSnippet?: Snippet;
85
- source?: Snippet;
61
+ adviceIcon?: Snippet;
86
62
  srcPickerContent?: Snippet;
87
63
  }
88
64
  type $$ComponentProps = Props & Events & Slots;
89
65
  declare const ObcReadout: import("svelte").Component<$$ComponentProps, {
90
- ReadoutSourceType: typeof ReadoutSourceType;
91
- ReadoutVariant: typeof ReadoutVariant;
92
- ReadoutDataState: typeof ReadoutDataState;
93
- ReadoutSetpointInteraction: typeof ReadoutSetpointInteraction;
94
- ReadoutDirection: typeof ReadoutDirection;
95
- ReadoutStackVerticalAlignment: typeof ReadoutStackVerticalAlignment;
66
+ ReadoutBlockSize: typeof ReadoutBlockSize;
67
+ ReadoutBlockDataQuality: typeof ReadoutBlockDataQuality;
96
68
  Priority: typeof Priority;
97
- ReadoutSetpointSize: typeof ReadoutSetpointSize;
98
- ReadoutSetpointFormat: typeof ReadoutSetpointFormat;
69
+ ReadoutDirection: typeof ReadoutDirection;
70
+ ReadoutStacking: typeof ReadoutStacking;
71
+ ReadoutAlignment: typeof ReadoutAlignment;
72
+ ReadoutSourceOptions: typeof ReadoutSourceOptions;
99
73
  AlertFrameConfig: typeof AlertFrameConfig;
100
- ReadoutAdviceFormat: typeof ReadoutAdviceFormat;
101
- ReadoutAdviceState: typeof ReadoutAdviceState;
74
+ ReadoutValueOptions: typeof ReadoutValueOptions;
75
+ ReadoutSetpointOptions: typeof ReadoutSetpointOptions;
76
+ ReadoutAdviceOptions: typeof ReadoutAdviceOptions;
77
+ ReadoutReserverOptions: typeof ReadoutReserverOptions;
102
78
  }, "">;
103
79
  type ObcReadout = ReturnType<typeof ObcReadout>;
104
80
  export default ObcReadout;
@@ -16,7 +16,11 @@ import type {AlertFrameConfig} from '@oicl/openbridge-webcomponents/dist/compone
16
16
  label?: string | undefined;
17
17
  unit?: string | undefined;
18
18
  src?: string | undefined;
19
- hasValue?: boolean;
19
+ /** Layout switch: `false` renders a deliberately value-less (label-only)
20
+ row that hugs its remaining parts. For a temporarily missing value keep
21
+ `hasValue` and set `value` to `null` instead — the dash keeps the value
22
+ block at full size, so the row does not shift when data arrives. */
23
+ hasValue?: boolean;
20
24
  value?: number | null;
21
25
  /** Render the value as `offText` (e.g. equipment powered down). Affects the value only. */
22
26
  off?: boolean;
@@ -9,6 +9,10 @@ export interface Props {
9
9
  label?: string | undefined;
10
10
  unit?: string | undefined;
11
11
  src?: string | undefined;
12
+ /** Layout switch: `false` renders a deliberately value-less (label-only)
13
+ row that hugs its remaining parts. For a temporarily missing value keep
14
+ `hasValue` and set `value` to `null` instead — the dash keeps the value
15
+ block at full size, so the row does not shift when data arrives. */
12
16
  hasValue?: boolean;
13
17
  value?: number | null;
14
18
  /** Render the value as `offText` (e.g. equipment powered down). Affects the value only. */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@oicl/openbridge-webcomponents-svelte",
3
- "version": "2.0.0-next.93",
3
+ "version": "2.0.0-next.95",
4
4
  "scripts": {
5
5
  "dev": "vite dev",
6
6
  "build": "vite build && npm run prepack",
@@ -31,7 +31,7 @@
31
31
  }
32
32
  },
33
33
  "dependencies": {
34
- "@oicl/openbridge-webcomponents": "^2.0.0-next.92"
34
+ "@oicl/openbridge-webcomponents": "^2.0.0-next.94"
35
35
  },
36
36
  "peerDependencies": {
37
37
  "svelte": "^5.0.0"
@@ -1,53 +0,0 @@
1
-
2
- <script lang="ts">
3
- export type {ReadoutVariant, ReadoutDirection} from '@oicl/openbridge-webcomponents/dist/navigation-instruments/readout/readout.js';
4
- export type {ReadoutSetpointSize} from '@oicl/openbridge-webcomponents/dist/navigation-instruments/readout-setpoint/readout-setpoint.js';
5
- export type {ReadoutAdviceFormat, ReadoutAdviceState} from '@oicl/openbridge-webcomponents/dist/navigation-instruments/readout-advice/readout-advice.js';
6
- export type {Priority} from '@oicl/openbridge-webcomponents/dist/navigation-instruments/types.js';
7
- import '@oicl/openbridge-webcomponents/dist/navigation-instruments/readout-advice/readout-advice.js';
8
- import { setProperties } from "../../util.js";
9
- import type {ReadoutVariant, ReadoutDirection} from '@oicl/openbridge-webcomponents/dist/navigation-instruments/readout/readout.js';
10
- import type {ReadoutSetpointSize} from '@oicl/openbridge-webcomponents/dist/navigation-instruments/readout-setpoint/readout-setpoint.js';
11
- import type {ReadoutAdviceFormat, ReadoutAdviceState} from '@oicl/openbridge-webcomponents/dist/navigation-instruments/readout-advice/readout-advice.js';
12
- import type {Priority} from '@oicl/openbridge-webcomponents/dist/navigation-instruments/types.js';
13
- import type { Snippet } from 'svelte';
14
-
15
- export interface Props {
16
- class?: string;
17
- style?: string;
18
- readoutStyle?: ReadoutVariant | undefined;
19
- direction?: ReadoutDirection | undefined;
20
- size?: ReadoutSetpointSize;
21
- format?: ReadoutAdviceFormat | undefined;
22
- priority?: Priority | undefined;
23
- state?: ReadoutAdviceState;
24
- hugContent?: boolean;
25
- value?: number | undefined;
26
- secondaryValue?: number | undefined;
27
- description?: string;
28
- minValueLength?: number;
29
- hasHintedZeros?: boolean;
30
- fractionDigits?: number;
31
- hasDegree?: boolean
32
- }
33
- export interface Events {
34
-
35
- }
36
- export interface Slots {
37
- icon?: Snippet
38
- }
39
- const { class: className, style, icon, ...props} = $props<Props & Events & Slots>();
40
-
41
- </script>
42
- <obc-readout-advice
43
- use:setProperties={props}
44
- class={className}
45
- style={style}
46
- >
47
-
48
- {#if icon}
49
- <div slot="icon">
50
- {@render icon()}
51
- </div>
52
- {/if}
53
- </obc-readout-advice>
@@ -1,40 +0,0 @@
1
- import '@oicl/openbridge-webcomponents/dist/navigation-instruments/readout-advice/readout-advice.js';
2
- import type { ReadoutVariant, ReadoutDirection } from '@oicl/openbridge-webcomponents/dist/navigation-instruments/readout/readout.js';
3
- import type { ReadoutSetpointSize } from '@oicl/openbridge-webcomponents/dist/navigation-instruments/readout-setpoint/readout-setpoint.js';
4
- import type { ReadoutAdviceFormat, ReadoutAdviceState } from '@oicl/openbridge-webcomponents/dist/navigation-instruments/readout-advice/readout-advice.js';
5
- import type { Priority } from '@oicl/openbridge-webcomponents/dist/navigation-instruments/types.js';
6
- import type { Snippet } from 'svelte';
7
- export interface Props {
8
- class?: string;
9
- style?: string;
10
- readoutStyle?: ReadoutVariant | undefined;
11
- direction?: ReadoutDirection | undefined;
12
- size?: ReadoutSetpointSize;
13
- format?: ReadoutAdviceFormat | undefined;
14
- priority?: Priority | undefined;
15
- state?: ReadoutAdviceState;
16
- hugContent?: boolean;
17
- value?: number | undefined;
18
- secondaryValue?: number | undefined;
19
- description?: string;
20
- minValueLength?: number;
21
- hasHintedZeros?: boolean;
22
- fractionDigits?: number;
23
- hasDegree?: boolean;
24
- }
25
- export interface Events {
26
- }
27
- export interface Slots {
28
- icon?: Snippet;
29
- }
30
- type $$ComponentProps = Props & Events & Slots;
31
- declare const ObcReadoutAdvice: import("svelte").Component<$$ComponentProps, {
32
- ReadoutVariant: typeof ReadoutVariant;
33
- ReadoutDirection: typeof ReadoutDirection;
34
- ReadoutSetpointSize: typeof ReadoutSetpointSize;
35
- ReadoutAdviceFormat: typeof ReadoutAdviceFormat;
36
- ReadoutAdviceState: typeof ReadoutAdviceState;
37
- Priority: typeof Priority;
38
- }, "">;
39
- type ObcReadoutAdvice = ReturnType<typeof ObcReadoutAdvice>;
40
- export default ObcReadoutAdvice;
@@ -1,63 +0,0 @@
1
-
2
- <script lang="ts">
3
- export type {ReadoutSetpointVariant, ReadoutSetpointSize, ReadoutSetpointValueTypography, ReadoutSetpointFormat, ReadoutSetpointMode} from '@oicl/openbridge-webcomponents/dist/navigation-instruments/readout-setpoint/readout-setpoint.js';
4
- export type {ReadoutVariant, ReadoutDirection} from '@oicl/openbridge-webcomponents/dist/navigation-instruments/readout/readout.js';
5
- export type {Priority} from '@oicl/openbridge-webcomponents/dist/navigation-instruments/types.js';
6
- import '@oicl/openbridge-webcomponents/dist/navigation-instruments/readout-setpoint/readout-setpoint.js';
7
- import { setProperties } from "../../util.js";
8
- import type {ReadoutSetpointVariant, ReadoutSetpointSize, ReadoutSetpointValueTypography, ReadoutSetpointFormat, ReadoutSetpointMode} from '@oicl/openbridge-webcomponents/dist/navigation-instruments/readout-setpoint/readout-setpoint.js';
9
- import type {ReadoutVariant, ReadoutDirection} from '@oicl/openbridge-webcomponents/dist/navigation-instruments/readout/readout.js';
10
- import type {Priority} from '@oicl/openbridge-webcomponents/dist/navigation-instruments/types.js';
11
- import type { Snippet } from 'svelte';
12
-
13
- export interface Props {
14
- class?: string;
15
- style?: string;
16
- variant?: ReadoutSetpointVariant;
17
- readoutStyle?: ReadoutVariant | undefined;
18
- direction?: ReadoutDirection | undefined;
19
- size?: ReadoutSetpointSize;
20
- valueTypography?: ReadoutSetpointValueTypography | undefined;
21
- format?: ReadoutSetpointFormat | undefined;
22
- mode?: ReadoutSetpointMode | undefined;
23
- priority?: Priority | undefined;
24
- hugContent?: boolean;
25
- minValueLength?: number;
26
- value?: number | undefined;
27
- secondaryValue?: number | undefined;
28
- off?: boolean;
29
- description?: string;
30
- hasHintedZeros?: boolean;
31
- hasDegree?: boolean;
32
- showZeroPadding?: boolean;
33
- fractionDigits?: number;
34
- reserveSpaceForIcon?: boolean
35
- }
36
- export interface Events {
37
-
38
- }
39
- export interface Slots {
40
- icon?: Snippet;
41
- valueSnippet?: Snippet
42
- }
43
- const { class: className, style, icon, valueSnippet, ...props} = $props<Props & Events & Slots>();
44
-
45
- </script>
46
- <obc-readout-setpoint
47
- use:setProperties={props}
48
- class={className}
49
- style={style}
50
- >
51
-
52
- {#if icon}
53
- <div slot="icon">
54
- {@render icon()}
55
- </div>
56
- {/if}
57
-
58
- {#if valueSnippet}
59
- <div slot="value">
60
- {@render valueSnippet()}
61
- </div>
62
- {/if}
63
- </obc-readout-setpoint>
@@ -1,47 +0,0 @@
1
- import '@oicl/openbridge-webcomponents/dist/navigation-instruments/readout-setpoint/readout-setpoint.js';
2
- import type { ReadoutSetpointVariant, ReadoutSetpointSize, ReadoutSetpointValueTypography, ReadoutSetpointFormat, ReadoutSetpointMode } from '@oicl/openbridge-webcomponents/dist/navigation-instruments/readout-setpoint/readout-setpoint.js';
3
- import type { ReadoutVariant, ReadoutDirection } from '@oicl/openbridge-webcomponents/dist/navigation-instruments/readout/readout.js';
4
- import type { Priority } from '@oicl/openbridge-webcomponents/dist/navigation-instruments/types.js';
5
- import type { Snippet } from 'svelte';
6
- export interface Props {
7
- class?: string;
8
- style?: string;
9
- variant?: ReadoutSetpointVariant;
10
- readoutStyle?: ReadoutVariant | undefined;
11
- direction?: ReadoutDirection | undefined;
12
- size?: ReadoutSetpointSize;
13
- valueTypography?: ReadoutSetpointValueTypography | undefined;
14
- format?: ReadoutSetpointFormat | undefined;
15
- mode?: ReadoutSetpointMode | undefined;
16
- priority?: Priority | undefined;
17
- hugContent?: boolean;
18
- minValueLength?: number;
19
- value?: number | undefined;
20
- secondaryValue?: number | undefined;
21
- off?: boolean;
22
- description?: string;
23
- hasHintedZeros?: boolean;
24
- hasDegree?: boolean;
25
- showZeroPadding?: boolean;
26
- fractionDigits?: number;
27
- reserveSpaceForIcon?: boolean;
28
- }
29
- export interface Events {
30
- }
31
- export interface Slots {
32
- icon?: Snippet;
33
- valueSnippet?: Snippet;
34
- }
35
- type $$ComponentProps = Props & Events & Slots;
36
- declare const ObcReadoutSetpoint: import("svelte").Component<$$ComponentProps, {
37
- ReadoutSetpointVariant: typeof ReadoutSetpointVariant;
38
- ReadoutSetpointSize: typeof ReadoutSetpointSize;
39
- ReadoutSetpointValueTypography: typeof ReadoutSetpointValueTypography;
40
- ReadoutSetpointFormat: typeof ReadoutSetpointFormat;
41
- ReadoutSetpointMode: typeof ReadoutSetpointMode;
42
- ReadoutVariant: typeof ReadoutVariant;
43
- ReadoutDirection: typeof ReadoutDirection;
44
- Priority: typeof Priority;
45
- }, "">;
46
- type ObcReadoutSetpoint = ReturnType<typeof ObcReadoutSetpoint>;
47
- export default ObcReadoutSetpoint;