@oicl/openbridge-webcomponents 2.0.0-next.94 → 2.0.0-next.96

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 (88) hide show
  1. package/bundle/openbridge-webcomponents.bundle.js +15137 -14794
  2. package/bundle/openbridge-webcomponents.bundle.js.map +1 -1
  3. package/custom-elements.json +110 -70
  4. package/dist/alert-severity.d.ts +1 -1
  5. package/dist/alert-severity.d.ts.map +1 -1
  6. package/dist/alert-severity.js +4 -1
  7. package/dist/alert-severity.js.map +1 -1
  8. package/dist/building-blocks/chart-line/chart-line-base.d.ts +95 -33
  9. package/dist/building-blocks/chart-line/chart-line-base.d.ts.map +1 -1
  10. package/dist/building-blocks/chart-line/chart-line-base.js +88 -23
  11. package/dist/building-blocks/chart-line/chart-line-base.js.map +1 -1
  12. package/dist/charthelpers/index.d.ts +1 -0
  13. package/dist/charthelpers/index.d.ts.map +1 -1
  14. package/dist/charthelpers/index.js +4 -0
  15. package/dist/charthelpers/index.js.map +1 -1
  16. package/dist/charthelpers/x-value.d.ts +72 -0
  17. package/dist/charthelpers/x-value.d.ts.map +1 -0
  18. package/dist/charthelpers/x-value.js +60 -0
  19. package/dist/charthelpers/x-value.js.map +1 -0
  20. package/dist/components/alert-button/alert-button.js +1 -1
  21. package/dist/components/alert-button/alert-button.js.map +1 -1
  22. package/dist/components/alert-icon/alert-icon.d.ts +30 -7
  23. package/dist/components/alert-icon/alert-icon.d.ts.map +1 -1
  24. package/dist/components/alert-icon/alert-icon.js +234 -67
  25. package/dist/components/alert-icon/alert-icon.js.map +1 -1
  26. package/dist/components/alert-icon/icons/icon-critical-acknowledged.d.ts +2 -0
  27. package/dist/components/alert-icon/icons/icon-critical-acknowledged.d.ts.map +1 -0
  28. package/dist/components/alert-icon/icons/icon-critical-acknowledged.js +17 -0
  29. package/dist/components/alert-icon/icons/icon-critical-acknowledged.js.map +1 -0
  30. package/dist/components/alert-icon/icons/icon-critical-rectified.d.ts +3 -0
  31. package/dist/components/alert-icon/icons/icon-critical-rectified.d.ts.map +1 -0
  32. package/dist/components/alert-icon/icons/icon-critical-rectified.js +28 -0
  33. package/dist/components/alert-icon/icons/icon-critical-rectified.js.map +1 -0
  34. package/dist/components/alert-icon/icons/icon-critical-silenced.d.ts +3 -0
  35. package/dist/components/alert-icon/icons/icon-critical-silenced.d.ts.map +1 -0
  36. package/dist/components/alert-icon/icons/{icon-warning-silenced.js → icon-critical-silenced.js} +26 -13
  37. package/dist/components/alert-icon/icons/icon-critical-silenced.js.map +1 -0
  38. package/dist/components/alert-icon/icons/icon-critical-unacknowledged.d.ts +3 -0
  39. package/dist/components/alert-icon/icons/icon-critical-unacknowledged.d.ts.map +1 -0
  40. package/dist/components/alert-icon/icons/icon-critical-unacknowledged.js +28 -0
  41. package/dist/components/alert-icon/icons/icon-critical-unacknowledged.js.map +1 -0
  42. package/dist/components/alert-icon/icons/icon-low-acknowledged.d.ts +2 -0
  43. package/dist/components/alert-icon/icons/icon-low-acknowledged.d.ts.map +1 -0
  44. package/dist/components/alert-icon/icons/icon-low-acknowledged.js +11 -0
  45. package/dist/components/alert-icon/icons/icon-low-acknowledged.js.map +1 -0
  46. package/dist/components/alert-icon/icons/icon-low-rectified.d.ts +3 -0
  47. package/dist/components/alert-icon/icons/icon-low-rectified.d.ts.map +1 -0
  48. package/dist/components/alert-icon/icons/icon-low-rectified.js +16 -0
  49. package/dist/components/alert-icon/icons/icon-low-rectified.js.map +1 -0
  50. package/dist/components/alert-icon/icons/icon-low-silenced.d.ts +3 -0
  51. package/dist/components/alert-icon/icons/icon-low-silenced.d.ts.map +1 -0
  52. package/dist/components/alert-icon/icons/icon-low-silenced.js +18 -0
  53. package/dist/components/alert-icon/icons/icon-low-silenced.js.map +1 -0
  54. package/dist/components/alert-icon/icons/icon-low-unacknowledged.d.ts +3 -0
  55. package/dist/components/alert-icon/icons/icon-low-unacknowledged.d.ts.map +1 -0
  56. package/dist/components/alert-icon/icons/icon-low-unacknowledged.js +16 -0
  57. package/dist/components/alert-icon/icons/icon-low-unacknowledged.js.map +1 -0
  58. package/dist/navigation-instruments/gauge-trend/gauge-trend.d.ts +16 -1
  59. package/dist/navigation-instruments/gauge-trend/gauge-trend.d.ts.map +1 -1
  60. package/dist/navigation-instruments/gauge-trend/gauge-trend.js +12 -0
  61. package/dist/navigation-instruments/gauge-trend/gauge-trend.js.map +1 -1
  62. package/dist/pages/alert-detail-page/alert-detail-page.d.ts.map +1 -1
  63. package/dist/pages/alert-detail-page/alert-detail-page.js +1 -2
  64. package/dist/pages/alert-detail-page/alert-detail-page.js.map +1 -1
  65. package/package.json +1 -1
  66. package/dist/components/alert-icon/icons/icon-alarm-rectified.d.ts +0 -3
  67. package/dist/components/alert-icon/icons/icon-alarm-rectified.d.ts.map +0 -1
  68. package/dist/components/alert-icon/icons/icon-alarm-rectified.js +0 -15
  69. package/dist/components/alert-icon/icons/icon-alarm-rectified.js.map +0 -1
  70. package/dist/components/alert-icon/icons/icon-alarm-silenced.d.ts +0 -3
  71. package/dist/components/alert-icon/icons/icon-alarm-silenced.d.ts.map +0 -1
  72. package/dist/components/alert-icon/icons/icon-alarm-silenced.js +0 -17
  73. package/dist/components/alert-icon/icons/icon-alarm-silenced.js.map +0 -1
  74. package/dist/components/alert-icon/icons/icon-alarm-unack.d.ts +0 -3
  75. package/dist/components/alert-icon/icons/icon-alarm-unack.d.ts.map +0 -1
  76. package/dist/components/alert-icon/icons/icon-alarm-unack.js +0 -15
  77. package/dist/components/alert-icon/icons/icon-alarm-unack.js.map +0 -1
  78. package/dist/components/alert-icon/icons/icon-warning-rectified.d.ts +0 -3
  79. package/dist/components/alert-icon/icons/icon-warning-rectified.d.ts.map +0 -1
  80. package/dist/components/alert-icon/icons/icon-warning-rectified.js +0 -15
  81. package/dist/components/alert-icon/icons/icon-warning-rectified.js.map +0 -1
  82. package/dist/components/alert-icon/icons/icon-warning-silenced.d.ts +0 -3
  83. package/dist/components/alert-icon/icons/icon-warning-silenced.d.ts.map +0 -1
  84. package/dist/components/alert-icon/icons/icon-warning-silenced.js.map +0 -1
  85. package/dist/components/alert-icon/icons/icon-warning-unack.d.ts +0 -3
  86. package/dist/components/alert-icon/icons/icon-warning-unack.d.ts.map +0 -1
  87. package/dist/components/alert-icon/icons/icon-warning-unack.js +0 -15
  88. package/dist/components/alert-icon/icons/icon-warning-unack.js.map +0 -1
@@ -31323,10 +31323,10 @@
31323
31323
  "kind": "field",
31324
31324
  "name": "data",
31325
31325
  "type": {
31326
- "text": "Array<{label: string, value: number}>"
31326
+ "text": "Array<{label?: string, x?: number|string|Date|TemporalLike, value: number}>"
31327
31327
  },
31328
31328
  "default": "[]",
31329
- "description": "Single-series data array. Each object must have `label` (string) and `value` (number). Used when `datasets` is not provided.",
31329
+ "description": "Single-series data array. In `category` mode each item needs `label`; in `time`/`number` mode each item needs `x` (epoch ms, ISO string, Date, or Temporal object — `label` is parsed as a fallback). Used when `datasets` is not provided. Points are drawn in array order (no sorting); Temporal Plain* values are interpreted in the system time zone.",
31330
31330
  "inheritedFrom": {
31331
31331
  "name": "ObcChartLineBase",
31332
31332
  "module": "src/building-blocks/chart-line/chart-line-base.ts"
@@ -31336,10 +31336,10 @@
31336
31336
  "kind": "field",
31337
31337
  "name": "datasets",
31338
31338
  "type": {
31339
- "text": "ChartDataset<'line', (number | {x: string|number|Date; y: number})[]>[]"
31339
+ "text": "ChartDataset<'line', (number | {x: number|string|Date|TemporalLike; y: number})[]>[]"
31340
31340
  },
31341
31341
  "default": "undefined",
31342
- "description": "Multi-series Chart.js datasets. Takes precedence over `data`. Each dataset can have `label`, `data` (numeric array or `{x, y}` points), and visual properties like `borderColor`, `backgroundColor`, `fill`, etc.",
31342
+ "description": "Multi-series Chart.js datasets. Takes precedence over `data`. Each dataset can have `label`, `data` (numeric array or `{x, y}` points), and visual properties like `borderColor`, `backgroundColor`, `fill`, etc. In `time`/`number` mode point x-values are normalized like single-series `x`.",
31343
31343
  "inheritedFrom": {
31344
31344
  "name": "ObcChartLineBase",
31345
31345
  "module": "src/building-blocks/chart-line/chart-line-base.ts"
@@ -31464,9 +31464,9 @@
31464
31464
  "kind": "field",
31465
31465
  "name": "xAxisType",
31466
31466
  "type": {
31467
- "text": "'category'|'time'"
31467
+ "text": "'category'|'time'|'number'"
31468
31468
  },
31469
- "description": "X-axis mode. `'category'` for labeled data points, `'time'` for time-based data (ISO strings or timestamps). Default: `'category'`.",
31469
+ "description": "X-axis mode. `'category'` for labeled, evenly spaced data points; `'time'` for time-based data positioned proportionally (numbers are always epoch ms — `xStepSize`/`xTicksLimit` operate in ms); `'number'` for plain numeric x-values. Default: `'category'`.",
31470
31470
  "attribute": "xAxisType",
31471
31471
  "inheritedFrom": {
31472
31472
  "name": "ObcChartLineBase",
@@ -31643,7 +31643,7 @@
31643
31643
  "type": {
31644
31644
  "text": "'minutes'|'date'"
31645
31645
  },
31646
- "description": "Time axis label format when `xAxisType='time'`. `'date'` shows full date/time, `'minutes'` shows minutes relative to first data point. Default: `'date'`.",
31646
+ "description": "Time axis label format when `xAxisType='time'`. `'date'` shows a locale date, `'minutes'` shows minutes relative to the latest data point. Default: `'date'`.",
31647
31647
  "attribute": "timeDisplay",
31648
31648
  "inheritedFrom": {
31649
31649
  "name": "ObcChartLineBase",
@@ -32103,7 +32103,7 @@
32103
32103
  {
32104
32104
  "name": "data",
32105
32105
  "type": {
32106
- "text": "| number[]\n | ChartDataset<\n 'line',\n (number | {x: string | number | Date; y: number})[]\n >"
32106
+ "text": "| number[]\n | {x: number; y: number}[]\n | ChartDataset<'line', ChartLinePoint[]>"
32107
32107
  },
32108
32108
  "description": "Either numeric values array or existing dataset to normalize"
32109
32109
  },
@@ -32139,14 +32139,14 @@
32139
32139
  "privacy": "protected",
32140
32140
  "return": {
32141
32141
  "type": {
32142
- "text": "ChartDataset<'line', number[]>[]"
32142
+ "text": "ChartDataset<'line', ChartLinePoint[]>[]"
32143
32143
  }
32144
32144
  },
32145
32145
  "parameters": [
32146
32146
  {
32147
32147
  "name": "values",
32148
32148
  "type": {
32149
- "text": "number[]"
32149
+ "text": "number[] | {x: number; y: number}[]"
32150
32150
  }
32151
32151
  },
32152
32152
  {
@@ -32156,7 +32156,7 @@
32156
32156
  }
32157
32157
  }
32158
32158
  ],
32159
- "description": "Create threshold mode datasets: invisible baseline + main dataset with above/below fills",
32159
+ "description": "Create threshold mode datasets: invisible baseline + main dataset with\nabove/below fills. Accepts plain values (category mode) or {x, y} points\n(time/number mode); the baseline mirrors the input x-positions.",
32160
32160
  "inheritedFrom": {
32161
32161
  "name": "ObcChartLineBase",
32162
32162
  "module": "src/building-blocks/chart-line/chart-line-base.ts"
@@ -32166,7 +32166,7 @@
32166
32166
  "kind": "method",
32167
32167
  "name": "prepareMultiSeriesDatasets",
32168
32168
  "privacy": "protected",
32169
- "description": "Prepare normalized datasets for multi-series charts",
32169
+ "description": "Prepare normalized datasets for multi-series charts.\nIn time/number mode every point's x is normalized (epoch ms / number)\nso strings, Dates and Temporal objects position correctly.",
32170
32170
  "inheritedFrom": {
32171
32171
  "name": "ObcChartLineBase",
32172
32172
  "module": "src/building-blocks/chart-line/chart-line-base.ts"
@@ -32176,7 +32176,7 @@
32176
32176
  "kind": "method",
32177
32177
  "name": "prepareSingleSeriesDatasets",
32178
32178
  "privacy": "protected",
32179
- "description": "Prepare datasets for single-series charts\nHandles both regular and threshold fill modes",
32179
+ "description": "Prepare datasets for single-series charts.\nCategory mode: labels + numeric values (unchanged legacy path).\nTime/number mode: normalized {x, y} points on a linear scale.\nHandles both regular and threshold fill modes.",
32180
32180
  "inheritedFrom": {
32181
32181
  "name": "ObcChartLineBase",
32182
32182
  "module": "src/building-blocks/chart-line/chart-line-base.ts"
@@ -32407,9 +32407,9 @@
32407
32407
  {
32408
32408
  "name": "xAxisType",
32409
32409
  "type": {
32410
- "text": "'category'|'time'"
32410
+ "text": "'category'|'time'|'number'"
32411
32411
  },
32412
- "description": "X-axis mode. `'category'` for labeled data points, `'time'` for time-based data (ISO strings or timestamps). Default: `'category'`.",
32412
+ "description": "X-axis mode. `'category'` for labeled, evenly spaced data points; `'time'` for time-based data positioned proportionally (numbers are always epoch ms — `xStepSize`/`xTicksLimit` operate in ms); `'number'` for plain numeric x-values. Default: `'category'`.",
32413
32413
  "fieldName": "xAxisType",
32414
32414
  "inheritedFrom": {
32415
32415
  "name": "ObcChartLineBase",
@@ -32523,7 +32523,7 @@
32523
32523
  "type": {
32524
32524
  "text": "'minutes'|'date'"
32525
32525
  },
32526
- "description": "Time axis label format when `xAxisType='time'`. `'date'` shows full date/time, `'minutes'` shows minutes relative to first data point. Default: `'date'`.",
32526
+ "description": "Time axis label format when `xAxisType='time'`. `'date'` shows a locale date, `'minutes'` shows minutes relative to the latest data point. Default: `'date'`.",
32527
32527
  "fieldName": "timeDisplay",
32528
32528
  "inheritedFrom": {
32529
32529
  "name": "ObcChartLineBase",
@@ -33211,10 +33211,10 @@
33211
33211
  "kind": "field",
33212
33212
  "name": "data",
33213
33213
  "type": {
33214
- "text": "Array<{label: string, value: number}>"
33214
+ "text": "Array<{label?: string, x?: number|string|Date|TemporalLike, value: number}>"
33215
33215
  },
33216
33216
  "default": "[]",
33217
- "description": "Single-series data array. Each object must have `label` (string) and `value` (number). Used when `datasets` is not provided.",
33217
+ "description": "Single-series data array. In `category` mode each item needs `label`; in `time`/`number` mode each item needs `x` (epoch ms, ISO string, Date, or Temporal object — `label` is parsed as a fallback). Used when `datasets` is not provided. Points are drawn in array order (no sorting); Temporal Plain* values are interpreted in the system time zone.",
33218
33218
  "inheritedFrom": {
33219
33219
  "name": "ObcChartLineBase",
33220
33220
  "module": "src/building-blocks/chart-line/chart-line-base.ts"
@@ -33224,10 +33224,10 @@
33224
33224
  "kind": "field",
33225
33225
  "name": "datasets",
33226
33226
  "type": {
33227
- "text": "ChartDataset<'line', (number | {x: string|number|Date; y: number})[]>[]"
33227
+ "text": "ChartDataset<'line', (number | {x: number|string|Date|TemporalLike; y: number})[]>[]"
33228
33228
  },
33229
33229
  "default": "undefined",
33230
- "description": "Multi-series Chart.js datasets. Takes precedence over `data`. Each dataset can have `label`, `data` (numeric array or `{x, y}` points), and visual properties like `borderColor`, `backgroundColor`, `fill`, etc.",
33230
+ "description": "Multi-series Chart.js datasets. Takes precedence over `data`. Each dataset can have `label`, `data` (numeric array or `{x, y}` points), and visual properties like `borderColor`, `backgroundColor`, `fill`, etc. In `time`/`number` mode point x-values are normalized like single-series `x`.",
33231
33231
  "inheritedFrom": {
33232
33232
  "name": "ObcChartLineBase",
33233
33233
  "module": "src/building-blocks/chart-line/chart-line-base.ts"
@@ -33352,9 +33352,9 @@
33352
33352
  "kind": "field",
33353
33353
  "name": "xAxisType",
33354
33354
  "type": {
33355
- "text": "'category'|'time'"
33355
+ "text": "'category'|'time'|'number'"
33356
33356
  },
33357
- "description": "X-axis mode. `'category'` for labeled data points, `'time'` for time-based data (ISO strings or timestamps). Default: `'category'`.",
33357
+ "description": "X-axis mode. `'category'` for labeled, evenly spaced data points; `'time'` for time-based data positioned proportionally (numbers are always epoch ms — `xStepSize`/`xTicksLimit` operate in ms); `'number'` for plain numeric x-values. Default: `'category'`.",
33358
33358
  "attribute": "xAxisType",
33359
33359
  "inheritedFrom": {
33360
33360
  "name": "ObcChartLineBase",
@@ -33531,7 +33531,7 @@
33531
33531
  "type": {
33532
33532
  "text": "'minutes'|'date'"
33533
33533
  },
33534
- "description": "Time axis label format when `xAxisType='time'`. `'date'` shows full date/time, `'minutes'` shows minutes relative to first data point. Default: `'date'`.",
33534
+ "description": "Time axis label format when `xAxisType='time'`. `'date'` shows a locale date, `'minutes'` shows minutes relative to the latest data point. Default: `'date'`.",
33535
33535
  "attribute": "timeDisplay",
33536
33536
  "inheritedFrom": {
33537
33537
  "name": "ObcChartLineBase",
@@ -33991,7 +33991,7 @@
33991
33991
  {
33992
33992
  "name": "data",
33993
33993
  "type": {
33994
- "text": "| number[]\n | ChartDataset<\n 'line',\n (number | {x: string | number | Date; y: number})[]\n >"
33994
+ "text": "| number[]\n | {x: number; y: number}[]\n | ChartDataset<'line', ChartLinePoint[]>"
33995
33995
  },
33996
33996
  "description": "Either numeric values array or existing dataset to normalize"
33997
33997
  },
@@ -34027,14 +34027,14 @@
34027
34027
  "privacy": "protected",
34028
34028
  "return": {
34029
34029
  "type": {
34030
- "text": "ChartDataset<'line', number[]>[]"
34030
+ "text": "ChartDataset<'line', ChartLinePoint[]>[]"
34031
34031
  }
34032
34032
  },
34033
34033
  "parameters": [
34034
34034
  {
34035
34035
  "name": "values",
34036
34036
  "type": {
34037
- "text": "number[]"
34037
+ "text": "number[] | {x: number; y: number}[]"
34038
34038
  }
34039
34039
  },
34040
34040
  {
@@ -34044,7 +34044,7 @@
34044
34044
  }
34045
34045
  }
34046
34046
  ],
34047
- "description": "Create threshold mode datasets: invisible baseline + main dataset with above/below fills",
34047
+ "description": "Create threshold mode datasets: invisible baseline + main dataset with\nabove/below fills. Accepts plain values (category mode) or {x, y} points\n(time/number mode); the baseline mirrors the input x-positions.",
34048
34048
  "inheritedFrom": {
34049
34049
  "name": "ObcChartLineBase",
34050
34050
  "module": "src/building-blocks/chart-line/chart-line-base.ts"
@@ -34054,7 +34054,7 @@
34054
34054
  "kind": "method",
34055
34055
  "name": "prepareMultiSeriesDatasets",
34056
34056
  "privacy": "protected",
34057
- "description": "Prepare normalized datasets for multi-series charts",
34057
+ "description": "Prepare normalized datasets for multi-series charts.\nIn time/number mode every point's x is normalized (epoch ms / number)\nso strings, Dates and Temporal objects position correctly.",
34058
34058
  "inheritedFrom": {
34059
34059
  "name": "ObcChartLineBase",
34060
34060
  "module": "src/building-blocks/chart-line/chart-line-base.ts"
@@ -34064,7 +34064,7 @@
34064
34064
  "kind": "method",
34065
34065
  "name": "prepareSingleSeriesDatasets",
34066
34066
  "privacy": "protected",
34067
- "description": "Prepare datasets for single-series charts\nHandles both regular and threshold fill modes",
34067
+ "description": "Prepare datasets for single-series charts.\nCategory mode: labels + numeric values (unchanged legacy path).\nTime/number mode: normalized {x, y} points on a linear scale.\nHandles both regular and threshold fill modes.",
34068
34068
  "inheritedFrom": {
34069
34069
  "name": "ObcChartLineBase",
34070
34070
  "module": "src/building-blocks/chart-line/chart-line-base.ts"
@@ -34308,9 +34308,9 @@
34308
34308
  {
34309
34309
  "name": "xAxisType",
34310
34310
  "type": {
34311
- "text": "'category'|'time'"
34311
+ "text": "'category'|'time'|'number'"
34312
34312
  },
34313
- "description": "X-axis mode. `'category'` for labeled data points, `'time'` for time-based data (ISO strings or timestamps). Default: `'category'`.",
34313
+ "description": "X-axis mode. `'category'` for labeled, evenly spaced data points; `'time'` for time-based data positioned proportionally (numbers are always epoch ms — `xStepSize`/`xTicksLimit` operate in ms); `'number'` for plain numeric x-values. Default: `'category'`.",
34314
34314
  "fieldName": "xAxisType",
34315
34315
  "inheritedFrom": {
34316
34316
  "name": "ObcChartLineBase",
@@ -34424,7 +34424,7 @@
34424
34424
  "type": {
34425
34425
  "text": "'minutes'|'date'"
34426
34426
  },
34427
- "description": "Time axis label format when `xAxisType='time'`. `'date'` shows full date/time, `'minutes'` shows minutes relative to first data point. Default: `'date'`.",
34427
+ "description": "Time axis label format when `xAxisType='time'`. `'date'` shows a locale date, `'minutes'` shows minutes relative to the latest data point. Default: `'date'`.",
34428
34428
  "fieldName": "timeDisplay",
34429
34429
  "inheritedFrom": {
34430
34430
  "name": "ObcChartLineBase",
@@ -41574,17 +41574,25 @@
41574
41574
  "members": [
41575
41575
  {
41576
41576
  "kind": "field",
41577
- "name": "type",
41577
+ "name": "alertType",
41578
41578
  "type": {
41579
41579
  "text": "AlertType"
41580
41580
  },
41581
+ "attribute": "alertType"
41582
+ },
41583
+ {
41584
+ "kind": "field",
41585
+ "name": "type",
41586
+ "type": {
41587
+ "text": "AlertType | undefined"
41588
+ },
41581
41589
  "attribute": "type"
41582
41590
  },
41583
41591
  {
41584
41592
  "kind": "field",
41585
41593
  "name": "acknowledged",
41586
41594
  "type": {
41587
- "text": "boolean"
41595
+ "text": "boolean | undefined"
41588
41596
  },
41589
41597
  "attribute": "acknowledged"
41590
41598
  },
@@ -41592,21 +41600,21 @@
41592
41600
  "kind": "field",
41593
41601
  "name": "active",
41594
41602
  "type": {
41595
- "text": "boolean"
41603
+ "text": "boolean | undefined"
41596
41604
  },
41597
41605
  "attribute": "active"
41598
41606
  },
41599
41607
  {
41600
41608
  "kind": "field",
41601
- "name": "outline",
41609
+ "name": "silenced",
41602
41610
  "type": {
41603
- "text": "boolean"
41611
+ "text": "boolean | undefined"
41604
41612
  },
41605
- "attribute": "outline"
41613
+ "attribute": "silenced"
41606
41614
  },
41607
41615
  {
41608
41616
  "kind": "field",
41609
- "name": "bamType",
41617
+ "name": "_effectiveType",
41610
41618
  "type": {
41611
41619
  "text": "AlertType"
41612
41620
  },
@@ -41615,18 +41623,26 @@
41615
41623
  },
41616
41624
  {
41617
41625
  "kind": "field",
41618
- "name": "icon",
41626
+ "name": "bamType",
41627
+ "type": {
41628
+ "text": "AlertType"
41629
+ },
41630
+ "privacy": "private",
41619
41631
  "readonly": true
41620
41632
  },
41621
41633
  {
41622
- "kind": "method",
41623
- "name": "renderOutlineIcon",
41634
+ "kind": "field",
41635
+ "name": "_effectiveState",
41636
+ "type": {
41637
+ "text": "AlertIconState"
41638
+ },
41624
41639
  "privacy": "private",
41625
- "return": {
41626
- "type": {
41627
- "text": "TemplateResult"
41628
- }
41629
- }
41640
+ "readonly": true
41641
+ },
41642
+ {
41643
+ "kind": "field",
41644
+ "name": "icon",
41645
+ "readonly": true
41630
41646
  },
41631
41647
  {
41632
41648
  "kind": "method",
@@ -41641,32 +41657,39 @@
41641
41657
  ],
41642
41658
  "attributes": [
41643
41659
  {
41644
- "name": "type",
41660
+ "name": "alertType",
41645
41661
  "type": {
41646
41662
  "text": "AlertType"
41647
41663
  },
41664
+ "fieldName": "alertType"
41665
+ },
41666
+ {
41667
+ "name": "type",
41668
+ "type": {
41669
+ "text": "AlertType | undefined"
41670
+ },
41648
41671
  "fieldName": "type"
41649
41672
  },
41650
41673
  {
41651
41674
  "name": "acknowledged",
41652
41675
  "type": {
41653
- "text": "boolean"
41676
+ "text": "boolean | undefined"
41654
41677
  },
41655
41678
  "fieldName": "acknowledged"
41656
41679
  },
41657
41680
  {
41658
41681
  "name": "active",
41659
41682
  "type": {
41660
- "text": "boolean"
41683
+ "text": "boolean | undefined"
41661
41684
  },
41662
41685
  "fieldName": "active"
41663
41686
  },
41664
41687
  {
41665
- "name": "outline",
41688
+ "name": "silenced",
41666
41689
  "type": {
41667
- "text": "boolean"
41690
+ "text": "boolean | undefined"
41668
41691
  },
41669
- "fieldName": "outline"
41692
+ "fieldName": "silenced"
41670
41693
  }
41671
41694
  ],
41672
41695
  "superclass": {
@@ -78767,7 +78790,7 @@
78767
78790
  "declarations": [
78768
78791
  {
78769
78792
  "kind": "class",
78770
- "description": "Gauge Trend - A navigation instrument combining a line/area chart with an integrated vertical scale.\n\nThis is a high-level, self-contained component that combines:\n- A line/area chart (based on `ObcChartLineBase`) with configurable fill mode\n- An integrated vertical scale (`obc-bar-vertical`) on the right side\n\nThe component is designed for displaying time-series or categorical trend data alongside a calibrated\nvertical measurement scale, commonly used in maritime navigation instruments.\n\n## Architecture\n\nInternally composed of:\n- **Base**: `ObcChartLineBase` (line/area graph functionality)\n- **Right scale**: `obc-bar-vertical` (external scale component)\n\n## Locked Configuration (not user-configurable)\n- Fixed aspect ratio scaling: always enabled\n- Instrument mode: always enabled (8px border radius)\n- X-axis type: always 'category'\n- Line mode: always 'smooth'\n- Grid, tick marks, points, legend: always hidden\n- Scale advice position: always 'inner'\n- Scale state: automatically inherits from `state` property\n\n## Usage Examples\n\n### Basic gauge trend with default area fill\n```html\n<obc-gauge-trend\n .data=${[\n {label: 'Jan', value: 3.5},\n {label: 'Feb', value: 4.2},\n {label: 'Mar', value: 5.0}\n ]}\n .minValue=${3}\n .maxValue=${7}\n .value=${5}\n .width=${480}\n .height=${480}\n></obc-gauge-trend>\n```\n\n### Line-only (no fill) - default\n```html\n<obc-gauge-trend\n .data=${chartData}\n></obc-gauge-trend>\n```\n\n### With area fill\n```html\n<obc-gauge-trend\n .chartFill=${true}\n .data=${chartData}\n></obc-gauge-trend>\n```\n\n### With enhanced colors and setpoint\n```html\n<obc-gauge-trend\n .enhanced=${true}\n .state=${'in-command'}\n .setpoint=${5.5}\n .value=${5.2}\n .hasBar=${true}\n .hasScale=${true}\n></obc-gauge-trend>\n```\n\n### With advice overlays\n```html\n<obc-gauge-trend\n .hasAdvice=${true}\n .advice=${[\n {min: 3, max: 5, type: 'caution', hinted: true},\n {min: 6, max: 7, type: 'advice', hinted: false}\n ]}\n></obc-gauge-trend>\n```",
78793
+ "description": "Gauge Trend - A navigation instrument combining a line/area chart with an integrated vertical scale.\n\nThis is a high-level, self-contained component that combines:\n- A line/area chart (based on `ObcChartLineBase`) with configurable fill mode\n- An integrated vertical scale (`obc-bar-vertical`) on the right side\n\nThe component is designed for displaying time-series or categorical trend data alongside a calibrated\nvertical measurement scale, commonly used in maritime navigation instruments.\n\n## Architecture\n\nInternally composed of:\n- **Base**: `ObcChartLineBase` (line/area graph functionality)\n- **Right scale**: `obc-bar-vertical` (external scale component)\n\n## Locked Configuration (not user-configurable)\n- Fixed aspect ratio scaling: always enabled\n- Instrument mode: always enabled (8px border radius)\n- X-axis type: auto-detected 'category' for `{label, value}` data,\n 'time' for `{x, value}` data (uneven intervals position proportionally).\n Assigning `xAxisType` explicitly disables auto-detection.\n- Line mode: always 'smooth'\n- Grid, tick marks, points, legend: always hidden\n- Scale advice position: always 'inner'\n- Scale state: automatically inherits from `state` property\n\n## Usage Examples\n\n### Basic gauge trend with default area fill\n```html\n<obc-gauge-trend\n .data=${[\n {label: 'Jan', value: 3.5},\n {label: 'Feb', value: 4.2},\n {label: 'Mar', value: 5.0}\n ]}\n .minValue=${3}\n .maxValue=${7}\n .value=${5}\n .width=${480}\n .height=${480}\n></obc-gauge-trend>\n```\n\n### Line-only (no fill) - default\n```html\n<obc-gauge-trend\n .data=${chartData}\n></obc-gauge-trend>\n```\n\n### With area fill\n```html\n<obc-gauge-trend\n .chartFill=${true}\n .data=${chartData}\n></obc-gauge-trend>\n```\n\n### With enhanced colors and setpoint\n```html\n<obc-gauge-trend\n .enhanced=${true}\n .state=${'in-command'}\n .setpoint=${5.5}\n .value=${5.2}\n .hasBar=${true}\n .hasScale=${true}\n></obc-gauge-trend>\n```\n\n### With advice overlays\n```html\n<obc-gauge-trend\n .hasAdvice=${true}\n .advice=${[\n {min: 3, max: 5, type: 'caution', hinted: true},\n {min: 6, max: 7, type: 'advice', hinted: false}\n ]}\n></obc-gauge-trend>\n```\n\n### Time-based data with uneven intervals\n```html\n<obc-gauge-trend\n .data=${[\n {x: '2026-07-06T10:00:00Z', value: 3.5},\n {x: '2026-07-06T10:03:00Z', value: 4.2},\n {x: '2026-07-06T10:15:00Z', value: 5.0}\n ]}\n></obc-gauge-trend>\n```",
78771
78794
  "name": "ObcGaugeTrend",
78772
78795
  "members": [
78773
78796
  {
@@ -78787,6 +78810,23 @@
78787
78810
  "privacy": "private",
78788
78811
  "default": "false"
78789
78812
  },
78813
+ {
78814
+ "kind": "field",
78815
+ "name": "_explicitXAxisType",
78816
+ "type": {
78817
+ "text": "boolean"
78818
+ },
78819
+ "privacy": "private",
78820
+ "default": "false"
78821
+ },
78822
+ {
78823
+ "kind": "field",
78824
+ "name": "_autoAppliedXAxisType",
78825
+ "type": {
78826
+ "text": "XAxisType | undefined"
78827
+ },
78828
+ "privacy": "private"
78829
+ },
78790
78830
  {
78791
78831
  "kind": "method",
78792
78832
  "name": "_createBarVerticalElement",
@@ -79094,9 +79134,9 @@
79094
79134
  "kind": "field",
79095
79135
  "name": "xAxisType",
79096
79136
  "type": {
79097
- "text": "'category'|'time'"
79137
+ "text": "'category'|'time'|'number'"
79098
79138
  },
79099
- "description": "X-axis mode. `'category'` for labeled data points, `'time'` for time-based data (ISO strings or timestamps). Default: `'category'`.",
79139
+ "description": "X-axis mode. `'category'` for labeled, evenly spaced data points; `'time'` for time-based data positioned proportionally (numbers are always epoch ms — `xStepSize`/`xTicksLimit` operate in ms); `'number'` for plain numeric x-values. Default: `'category'`.",
79100
79140
  "attribute": "xAxisType",
79101
79141
  "inheritedFrom": {
79102
79142
  "name": "ObcChartLineBase",
@@ -79149,7 +79189,7 @@
79149
79189
  "type": {
79150
79190
  "text": "'minutes'|'date'"
79151
79191
  },
79152
- "description": "Time axis label format when `xAxisType='time'`. `'date'` shows full date/time, `'minutes'` shows minutes relative to first data point. Default: `'date'`.",
79192
+ "description": "Time axis label format when `xAxisType='time'`. `'date'` shows a locale date, `'minutes'` shows minutes relative to the latest data point. Default: `'date'`.",
79153
79193
  "attribute": "timeDisplay",
79154
79194
  "inheritedFrom": {
79155
79195
  "name": "ObcChartLineBase",
@@ -79479,10 +79519,10 @@
79479
79519
  "kind": "field",
79480
79520
  "name": "data",
79481
79521
  "type": {
79482
- "text": "Array<{label: string, value: number}>"
79522
+ "text": "Array<{label?: string, x?: number|string|Date|TemporalLike, value: number}>"
79483
79523
  },
79484
79524
  "default": "[]",
79485
- "description": "Single-series data array. Each object must have `label` (string) and `value` (number). Used when `datasets` is not provided.",
79525
+ "description": "Single-series data array. In `category` mode each item needs `label`; in `time`/`number` mode each item needs `x` (epoch ms, ISO string, Date, or Temporal object — `label` is parsed as a fallback). Used when `datasets` is not provided. Points are drawn in array order (no sorting); Temporal Plain* values are interpreted in the system time zone.",
79486
79526
  "inheritedFrom": {
79487
79527
  "name": "ObcChartLineBase",
79488
79528
  "module": "src/building-blocks/chart-line/chart-line-base.ts"
@@ -79492,10 +79532,10 @@
79492
79532
  "kind": "field",
79493
79533
  "name": "datasets",
79494
79534
  "type": {
79495
- "text": "ChartDataset<'line', (number | {x: string|number|Date; y: number})[]>[]"
79535
+ "text": "ChartDataset<'line', (number | {x: number|string|Date|TemporalLike; y: number})[]>[]"
79496
79536
  },
79497
79537
  "default": "undefined",
79498
- "description": "Multi-series Chart.js datasets. Takes precedence over `data`. Each dataset can have `label`, `data` (numeric array or `{x, y}` points), and visual properties like `borderColor`, `backgroundColor`, `fill`, etc.",
79538
+ "description": "Multi-series Chart.js datasets. Takes precedence over `data`. Each dataset can have `label`, `data` (numeric array or `{x, y}` points), and visual properties like `borderColor`, `backgroundColor`, `fill`, etc. In `time`/`number` mode point x-values are normalized like single-series `x`.",
79499
79539
  "inheritedFrom": {
79500
79540
  "name": "ObcChartLineBase",
79501
79541
  "module": "src/building-blocks/chart-line/chart-line-base.ts"
@@ -79994,7 +80034,7 @@
79994
80034
  {
79995
80035
  "name": "data",
79996
80036
  "type": {
79997
- "text": "| number[]\n | ChartDataset<\n 'line',\n (number | {x: string | number | Date; y: number})[]\n >"
80037
+ "text": "| number[]\n | {x: number; y: number}[]\n | ChartDataset<'line', ChartLinePoint[]>"
79998
80038
  },
79999
80039
  "description": "Either numeric values array or existing dataset to normalize"
80000
80040
  },
@@ -80030,14 +80070,14 @@
80030
80070
  "privacy": "protected",
80031
80071
  "return": {
80032
80072
  "type": {
80033
- "text": "ChartDataset<'line', number[]>[]"
80073
+ "text": "ChartDataset<'line', ChartLinePoint[]>[]"
80034
80074
  }
80035
80075
  },
80036
80076
  "parameters": [
80037
80077
  {
80038
80078
  "name": "values",
80039
80079
  "type": {
80040
- "text": "number[]"
80080
+ "text": "number[] | {x: number; y: number}[]"
80041
80081
  }
80042
80082
  },
80043
80083
  {
@@ -80047,7 +80087,7 @@
80047
80087
  }
80048
80088
  }
80049
80089
  ],
80050
- "description": "Create threshold mode datasets: invisible baseline + main dataset with above/below fills",
80090
+ "description": "Create threshold mode datasets: invisible baseline + main dataset with\nabove/below fills. Accepts plain values (category mode) or {x, y} points\n(time/number mode); the baseline mirrors the input x-positions.",
80051
80091
  "inheritedFrom": {
80052
80092
  "name": "ObcChartLineBase",
80053
80093
  "module": "src/building-blocks/chart-line/chart-line-base.ts"
@@ -80057,7 +80097,7 @@
80057
80097
  "kind": "method",
80058
80098
  "name": "prepareMultiSeriesDatasets",
80059
80099
  "privacy": "protected",
80060
- "description": "Prepare normalized datasets for multi-series charts",
80100
+ "description": "Prepare normalized datasets for multi-series charts.\nIn time/number mode every point's x is normalized (epoch ms / number)\nso strings, Dates and Temporal objects position correctly.",
80061
80101
  "inheritedFrom": {
80062
80102
  "name": "ObcChartLineBase",
80063
80103
  "module": "src/building-blocks/chart-line/chart-line-base.ts"
@@ -80067,7 +80107,7 @@
80067
80107
  "kind": "method",
80068
80108
  "name": "prepareSingleSeriesDatasets",
80069
80109
  "privacy": "protected",
80070
- "description": "Prepare datasets for single-series charts\nHandles both regular and threshold fill modes",
80110
+ "description": "Prepare datasets for single-series charts.\nCategory mode: labels + numeric values (unchanged legacy path).\nTime/number mode: normalized {x, y} points on a linear scale.\nHandles both regular and threshold fill modes.",
80071
80111
  "inheritedFrom": {
80072
80112
  "name": "ObcChartLineBase",
80073
80113
  "module": "src/building-blocks/chart-line/chart-line-base.ts"
@@ -80524,9 +80564,9 @@
80524
80564
  {
80525
80565
  "name": "xAxisType",
80526
80566
  "type": {
80527
- "text": "'category'|'time'"
80567
+ "text": "'category'|'time'|'number'"
80528
80568
  },
80529
- "description": "X-axis mode. `'category'` for labeled data points, `'time'` for time-based data (ISO strings or timestamps). Default: `'category'`.",
80569
+ "description": "X-axis mode. `'category'` for labeled, evenly spaced data points; `'time'` for time-based data positioned proportionally (numbers are always epoch ms — `xStepSize`/`xTicksLimit` operate in ms); `'number'` for plain numeric x-values. Default: `'category'`.",
80530
80570
  "fieldName": "xAxisType",
80531
80571
  "inheritedFrom": {
80532
80572
  "name": "ObcChartLineBase",
@@ -80640,7 +80680,7 @@
80640
80680
  "type": {
80641
80681
  "text": "'minutes'|'date'"
80642
80682
  },
80643
- "description": "Time axis label format when `xAxisType='time'`. `'date'` shows full date/time, `'minutes'` shows minutes relative to first data point. Default: `'date'`.",
80683
+ "description": "Time axis label format when `xAxisType='time'`. `'date'` shows a locale date, `'minutes'` shows minutes relative to the latest data point. Default: `'date'`.",
80644
80684
  "fieldName": "timeDisplay",
80645
80685
  "inheritedFrom": {
80646
80686
  "name": "ObcChartLineBase",
@@ -13,7 +13,7 @@ export type AlertColorTokens = {
13
13
  onActive: string;
14
14
  };
15
15
  export declare function requiresAcknowledgement(type: AlertType): boolean;
16
- export declare function supportsBlinking(type: AlertType): boolean;
16
+ export declare function supportsBlinking(type: AlertType, acknowledged: boolean): boolean;
17
17
  export declare function getAlertSeverityCssClass(type: AlertType): string;
18
18
  export declare function getAlertColorTokens(type: AlertType): AlertColorTokens;
19
19
  export declare function getAlertBadgeComponent(type: AlertType): AlertBadgeComponent;
@@ -1 +1 @@
1
- {"version":3,"file":"alert-severity.d.ts","sourceRoot":"","sources":["../src/alert-severity.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;AACH,OAAO,EAAC,SAAS,EAAE,uBAAuB,EAAC,MAAM,YAAY,CAAC;AAE9D,OAAO,EAAC,uBAAuB,EAAC,CAAC;AAEjC,oBAAY,mBAAmB;IAC7B,KAAK,oBAAoB;IACzB,OAAO,sBAAsB;IAC7B,OAAO,sBAAsB;IAC7B,QAAQ,uBAAuB;IAC/B,UAAU,yBAAyB;CACpC;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO,CAShE;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO,CASzD;AAED,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,SAAS,GAAG,MAAM,CAEhE;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,SAAS,GAAG,gBAAgB,CAqCrE;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,SAAS,GAAG,mBAAmB,CAiB3E;AAED,oBAAY,qBAAqB;IAC/B,KAAK,6BAA6B;IAClC,OAAO,+BAA+B;IACtC,OAAO,+BAA+B;IACtC,QAAQ,gCAAgC;IACxC,UAAU,kCAAkC;CAC7C;AAED,wBAAgB,wBAAwB,CACtC,IAAI,EAAE,SAAS,GACd,qBAAqB,CAiBvB;AAED,oBAAY,cAAc;IACxB,QAAQ,aAAa;IACrB,KAAK,UAAU;IACf,OAAO,YAAY;IACnB,GAAG,QAAQ;CACZ;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,SAAS,GAAG,cAAc,CAejE;AAED,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,SAAS,GAAG,SAAS,CAYrE;AAED,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO,CAElE;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO,CAM3D"}
1
+ {"version":3,"file":"alert-severity.d.ts","sourceRoot":"","sources":["../src/alert-severity.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;AACH,OAAO,EAAC,SAAS,EAAE,uBAAuB,EAAC,MAAM,YAAY,CAAC;AAE9D,OAAO,EAAC,uBAAuB,EAAC,CAAC;AAEjC,oBAAY,mBAAmB;IAC7B,KAAK,oBAAoB;IACzB,OAAO,sBAAsB;IAC7B,OAAO,sBAAsB;IAC7B,QAAQ,uBAAuB;IAC/B,UAAU,yBAAyB;CACpC;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO,CAShE;AAED,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,SAAS,EACf,YAAY,EAAE,OAAO,GACpB,OAAO,CAaT;AAED,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,SAAS,GAAG,MAAM,CAEhE;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,SAAS,GAAG,gBAAgB,CAqCrE;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,SAAS,GAAG,mBAAmB,CAiB3E;AAED,oBAAY,qBAAqB;IAC/B,KAAK,6BAA6B;IAClC,OAAO,+BAA+B;IACtC,OAAO,+BAA+B;IACtC,QAAQ,gCAAgC;IACxC,UAAU,kCAAkC;CAC7C;AAED,wBAAgB,wBAAwB,CACtC,IAAI,EAAE,SAAS,GACd,qBAAqB,CAiBvB;AAED,oBAAY,cAAc;IACxB,QAAQ,aAAa;IACrB,KAAK,UAAU;IACf,OAAO,YAAY;IACnB,GAAG,QAAQ;CACZ;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,SAAS,GAAG,cAAc,CAejE;AAED,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,SAAS,GAAG,SAAS,CAYrE;AAED,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO,CAElE;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO,CAM3D"}
@@ -18,7 +18,10 @@ function requiresAcknowledgement(type) {
18
18
  AlertType.LevelLow
19
19
  ].includes(type);
20
20
  }
21
- function supportsBlinking(type) {
21
+ function supportsBlinking(type, acknowledged) {
22
+ if (acknowledged) {
23
+ return false;
24
+ }
22
25
  return [
23
26
  AlertType.Alarm,
24
27
  AlertType.Warning,
@@ -1 +1 @@
1
- {"version":3,"file":"alert-severity.js","sources":["../src/alert-severity.ts"],"sourcesContent":["/**\n * `alert-severity` – Pure helper module mapping alert severities to their\n * visual, behavioral, and acknowledgement semantics.\n *\n * Centralizes the per-`AlertType` decisions shared across alert-rendering\n * components (badges, twotone icons, frames, lists) so that severity behavior\n * stays consistent everywhere. Supports both the legacy severities\n * (`alarm`, `warning`, `caution`) and the level severities\n * (`level-critical`, `level-high`, `level-medium`, `level-low`, `level-diagnostic`),\n * collapsing the level set onto the legacy visual/blink treatments where they\n * share styling.\n *\n * Features:\n * - Color tokens: `getAlertColorTokens` returns background/border/on-active\n * CSS custom properties per severity.\n * - Component selectors: `getAlertBadgeComponent` and\n * `getAlertTwotoneComponent` resolve the badge/icon element tag for a\n * severity.\n * - Blinking: `supportsBlinking` reports whether a severity blinks,\n * `getAlertBlinkMode` resolves its blink mode, and\n * `getBamAlertTypeForBlinking` maps level severities onto the legacy type used\n * by the bridge alert management (BAM) blink machinery.\n * - Acknowledgement & filtering: `requiresAcknowledgement` reports whether a\n * severity needs an ACK action, `excludedFromUnackedFilter` reports whether\n * it is hidden from the \"unacked\" view, and `usesAlarmNoAckIcon` selects the\n * alarm-style no-ack icon.\n * - Priority: re-exports `ALERT_SEVERITY_PRIORITY`, the ordered severity list\n * (most → least severe) used to sort alerts.\n *\n * Usage:\n * ```ts\n * import {\n * getAlertColorTokens,\n * requiresAcknowledgement,\n * ALERT_SEVERITY_PRIORITY,\n * } from './alert-severity.js';\n * import {AlertType} from './types.js';\n *\n * const tokens = getAlertColorTokens(AlertType.LevelHigh);\n * const needsAck = requiresAcknowledgement(AlertType.LevelLow); // true\n * alerts.sort(\n * (a, b) =>\n * ALERT_SEVERITY_PRIORITY.indexOf(a.type) -\n * ALERT_SEVERITY_PRIORITY.indexOf(b.type)\n * );\n * ```\n */\nimport {AlertType, ALERT_SEVERITY_PRIORITY} from './types.js';\n\nexport {ALERT_SEVERITY_PRIORITY};\n\nexport enum AlertBadgeComponent {\n Alarm = 'obi-alarm-badge',\n Warning = 'obi-warning-badge',\n Caution = 'obi-caution-badge',\n Critical = 'obi-critical-badge',\n Diagnostic = 'obi-diagnostic-badge',\n}\n\nexport type AlertColorTokens = {\n bg: string;\n border: string;\n onActive: string;\n};\n\nexport function requiresAcknowledgement(type: AlertType): boolean {\n return [\n AlertType.Alarm,\n AlertType.Warning,\n AlertType.LevelCritical,\n AlertType.LevelHigh,\n AlertType.LevelMedium,\n AlertType.LevelLow,\n ].includes(type);\n}\n\nexport function supportsBlinking(type: AlertType): boolean {\n return [\n AlertType.Alarm,\n AlertType.Warning,\n AlertType.LevelCritical,\n AlertType.LevelHigh,\n AlertType.LevelMedium,\n AlertType.LevelLow,\n ].includes(type);\n}\n\nexport function getAlertSeverityCssClass(type: AlertType): string {\n return type;\n}\n\nexport function getAlertColorTokens(type: AlertType): AlertColorTokens {\n switch (type) {\n case AlertType.LevelCritical:\n return {\n bg: 'var(--critical-enabled-background-color)',\n border: 'var(--critical-enabled-border-color)',\n onActive: 'var(--on-critical-active-color)',\n };\n case AlertType.Warning:\n case AlertType.LevelMedium:\n return {\n bg: 'var(--alert-warning-color)',\n border: 'var(--alert-warning-outline-color)',\n onActive: 'var(--on-warning-active-color)',\n };\n case AlertType.Caution:\n case AlertType.LevelLow:\n return {\n bg: 'var(--alert-caution-color)',\n border: 'var(--alert-caution-outline-color)',\n onActive: 'var(--on-caution-active-color)',\n };\n case AlertType.LevelDiagnostic:\n return {\n bg: 'var(--notification-enabled-background-color)',\n border: 'var(--notification-enabled-border-color)',\n onActive: 'var(--on-notification-active-color)',\n };\n case AlertType.Alarm:\n case AlertType.LevelHigh:\n default:\n return {\n bg: 'var(--alert-alarm-color)',\n border: 'var(--alert-alarm-outline-color)',\n onActive: 'var(--on-alarm-active-color)',\n };\n }\n}\n\nexport function getAlertBadgeComponent(type: AlertType): AlertBadgeComponent {\n switch (type) {\n case AlertType.LevelCritical:\n return AlertBadgeComponent.Critical;\n case AlertType.Warning:\n case AlertType.LevelMedium:\n return AlertBadgeComponent.Warning;\n case AlertType.Caution:\n case AlertType.LevelLow:\n return AlertBadgeComponent.Caution;\n case AlertType.LevelDiagnostic:\n return AlertBadgeComponent.Diagnostic;\n case AlertType.Alarm:\n case AlertType.LevelHigh:\n default:\n return AlertBadgeComponent.Alarm;\n }\n}\n\nexport enum AlertTwotoneComponent {\n Alarm = 'obi-alerts-alarm-twotone',\n Warning = 'obi-alerts-warning-twotone',\n Caution = 'obi-alerts-caution-twotone',\n Critical = 'obi-alerts-critical-twotone',\n Diagnostic = 'obi-alerts-diagnostic-twotone',\n}\n\nexport function getAlertTwotoneComponent(\n type: AlertType\n): AlertTwotoneComponent {\n switch (type) {\n case AlertType.LevelCritical:\n return AlertTwotoneComponent.Critical;\n case AlertType.LevelDiagnostic:\n return AlertTwotoneComponent.Diagnostic;\n case AlertType.Warning:\n case AlertType.LevelMedium:\n return AlertTwotoneComponent.Warning;\n case AlertType.Caution:\n case AlertType.LevelLow:\n return AlertTwotoneComponent.Caution;\n case AlertType.Alarm:\n case AlertType.LevelHigh:\n default:\n return AlertTwotoneComponent.Alarm;\n }\n}\n\nexport enum AlertBlinkMode {\n Critical = 'critical',\n Alarm = 'alarm',\n Warning = 'warning',\n Low = 'low',\n}\n\nexport function getAlertBlinkMode(type: AlertType): AlertBlinkMode {\n switch (type) {\n case AlertType.LevelCritical:\n return AlertBlinkMode.Critical;\n case AlertType.Warning:\n case AlertType.LevelMedium:\n return AlertBlinkMode.Warning;\n case AlertType.Caution:\n case AlertType.LevelLow:\n return AlertBlinkMode.Low;\n case AlertType.Alarm:\n case AlertType.LevelHigh:\n default:\n return AlertBlinkMode.Alarm;\n }\n}\n\nexport function getBamAlertTypeForBlinking(type: AlertType): AlertType {\n switch (type) {\n case AlertType.LevelCritical:\n case AlertType.LevelHigh:\n return AlertType.Alarm;\n case AlertType.LevelMedium:\n return AlertType.Warning;\n case AlertType.LevelLow:\n return AlertType.Caution;\n default:\n return type;\n }\n}\n\nexport function excludedFromUnackedFilter(type: AlertType): boolean {\n return [AlertType.Caution, AlertType.LevelDiagnostic].includes(type);\n}\n\nexport function usesAlarmNoAckIcon(type: AlertType): boolean {\n return [\n AlertType.Alarm,\n AlertType.LevelCritical,\n AlertType.LevelHigh,\n ].includes(type);\n}\n"],"names":["AlertBadgeComponent","AlertTwotoneComponent","AlertBlinkMode"],"mappings":"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"}
1
+ {"version":3,"file":"alert-severity.js","sources":["../src/alert-severity.ts"],"sourcesContent":["/**\n * `alert-severity` – Pure helper module mapping alert severities to their\n * visual, behavioral, and acknowledgement semantics.\n *\n * Centralizes the per-`AlertType` decisions shared across alert-rendering\n * components (badges, twotone icons, frames, lists) so that severity behavior\n * stays consistent everywhere. Supports both the legacy severities\n * (`alarm`, `warning`, `caution`) and the level severities\n * (`level-critical`, `level-high`, `level-medium`, `level-low`, `level-diagnostic`),\n * collapsing the level set onto the legacy visual/blink treatments where they\n * share styling.\n *\n * Features:\n * - Color tokens: `getAlertColorTokens` returns background/border/on-active\n * CSS custom properties per severity.\n * - Component selectors: `getAlertBadgeComponent` and\n * `getAlertTwotoneComponent` resolve the badge/icon element tag for a\n * severity.\n * - Blinking: `supportsBlinking` reports whether a severity blinks,\n * `getAlertBlinkMode` resolves its blink mode, and\n * `getBamAlertTypeForBlinking` maps level severities onto the legacy type used\n * by the bridge alert management (BAM) blink machinery.\n * - Acknowledgement & filtering: `requiresAcknowledgement` reports whether a\n * severity needs an ACK action, `excludedFromUnackedFilter` reports whether\n * it is hidden from the \"unacked\" view, and `usesAlarmNoAckIcon` selects the\n * alarm-style no-ack icon.\n * - Priority: re-exports `ALERT_SEVERITY_PRIORITY`, the ordered severity list\n * (most → least severe) used to sort alerts.\n *\n * Usage:\n * ```ts\n * import {\n * getAlertColorTokens,\n * requiresAcknowledgement,\n * ALERT_SEVERITY_PRIORITY,\n * } from './alert-severity.js';\n * import {AlertType} from './types.js';\n *\n * const tokens = getAlertColorTokens(AlertType.LevelHigh);\n * const needsAck = requiresAcknowledgement(AlertType.LevelLow); // true\n * alerts.sort(\n * (a, b) =>\n * ALERT_SEVERITY_PRIORITY.indexOf(a.type) -\n * ALERT_SEVERITY_PRIORITY.indexOf(b.type)\n * );\n * ```\n */\nimport {AlertType, ALERT_SEVERITY_PRIORITY} from './types.js';\n\nexport {ALERT_SEVERITY_PRIORITY};\n\nexport enum AlertBadgeComponent {\n Alarm = 'obi-alarm-badge',\n Warning = 'obi-warning-badge',\n Caution = 'obi-caution-badge',\n Critical = 'obi-critical-badge',\n Diagnostic = 'obi-diagnostic-badge',\n}\n\nexport type AlertColorTokens = {\n bg: string;\n border: string;\n onActive: string;\n};\n\nexport function requiresAcknowledgement(type: AlertType): boolean {\n return [\n AlertType.Alarm,\n AlertType.Warning,\n AlertType.LevelCritical,\n AlertType.LevelHigh,\n AlertType.LevelMedium,\n AlertType.LevelLow,\n ].includes(type);\n}\n\nexport function supportsBlinking(\n type: AlertType,\n acknowledged: boolean\n): boolean {\n if (acknowledged) {\n return false;\n }\n\n return [\n AlertType.Alarm,\n AlertType.Warning,\n AlertType.LevelCritical,\n AlertType.LevelHigh,\n AlertType.LevelMedium,\n AlertType.LevelLow,\n ].includes(type);\n}\n\nexport function getAlertSeverityCssClass(type: AlertType): string {\n return type;\n}\n\nexport function getAlertColorTokens(type: AlertType): AlertColorTokens {\n switch (type) {\n case AlertType.LevelCritical:\n return {\n bg: 'var(--critical-enabled-background-color)',\n border: 'var(--critical-enabled-border-color)',\n onActive: 'var(--on-critical-active-color)',\n };\n case AlertType.Warning:\n case AlertType.LevelMedium:\n return {\n bg: 'var(--alert-warning-color)',\n border: 'var(--alert-warning-outline-color)',\n onActive: 'var(--on-warning-active-color)',\n };\n case AlertType.Caution:\n case AlertType.LevelLow:\n return {\n bg: 'var(--alert-caution-color)',\n border: 'var(--alert-caution-outline-color)',\n onActive: 'var(--on-caution-active-color)',\n };\n case AlertType.LevelDiagnostic:\n return {\n bg: 'var(--notification-enabled-background-color)',\n border: 'var(--notification-enabled-border-color)',\n onActive: 'var(--on-notification-active-color)',\n };\n case AlertType.Alarm:\n case AlertType.LevelHigh:\n default:\n return {\n bg: 'var(--alert-alarm-color)',\n border: 'var(--alert-alarm-outline-color)',\n onActive: 'var(--on-alarm-active-color)',\n };\n }\n}\n\nexport function getAlertBadgeComponent(type: AlertType): AlertBadgeComponent {\n switch (type) {\n case AlertType.LevelCritical:\n return AlertBadgeComponent.Critical;\n case AlertType.Warning:\n case AlertType.LevelMedium:\n return AlertBadgeComponent.Warning;\n case AlertType.Caution:\n case AlertType.LevelLow:\n return AlertBadgeComponent.Caution;\n case AlertType.LevelDiagnostic:\n return AlertBadgeComponent.Diagnostic;\n case AlertType.Alarm:\n case AlertType.LevelHigh:\n default:\n return AlertBadgeComponent.Alarm;\n }\n}\n\nexport enum AlertTwotoneComponent {\n Alarm = 'obi-alerts-alarm-twotone',\n Warning = 'obi-alerts-warning-twotone',\n Caution = 'obi-alerts-caution-twotone',\n Critical = 'obi-alerts-critical-twotone',\n Diagnostic = 'obi-alerts-diagnostic-twotone',\n}\n\nexport function getAlertTwotoneComponent(\n type: AlertType\n): AlertTwotoneComponent {\n switch (type) {\n case AlertType.LevelCritical:\n return AlertTwotoneComponent.Critical;\n case AlertType.LevelDiagnostic:\n return AlertTwotoneComponent.Diagnostic;\n case AlertType.Warning:\n case AlertType.LevelMedium:\n return AlertTwotoneComponent.Warning;\n case AlertType.Caution:\n case AlertType.LevelLow:\n return AlertTwotoneComponent.Caution;\n case AlertType.Alarm:\n case AlertType.LevelHigh:\n default:\n return AlertTwotoneComponent.Alarm;\n }\n}\n\nexport enum AlertBlinkMode {\n Critical = 'critical',\n Alarm = 'alarm',\n Warning = 'warning',\n Low = 'low',\n}\n\nexport function getAlertBlinkMode(type: AlertType): AlertBlinkMode {\n switch (type) {\n case AlertType.LevelCritical:\n return AlertBlinkMode.Critical;\n case AlertType.Warning:\n case AlertType.LevelMedium:\n return AlertBlinkMode.Warning;\n case AlertType.Caution:\n case AlertType.LevelLow:\n return AlertBlinkMode.Low;\n case AlertType.Alarm:\n case AlertType.LevelHigh:\n default:\n return AlertBlinkMode.Alarm;\n }\n}\n\nexport function getBamAlertTypeForBlinking(type: AlertType): AlertType {\n switch (type) {\n case AlertType.LevelCritical:\n case AlertType.LevelHigh:\n return AlertType.Alarm;\n case AlertType.LevelMedium:\n return AlertType.Warning;\n case AlertType.LevelLow:\n return AlertType.Caution;\n default:\n return type;\n }\n}\n\nexport function excludedFromUnackedFilter(type: AlertType): boolean {\n return [AlertType.Caution, AlertType.LevelDiagnostic].includes(type);\n}\n\nexport function usesAlarmNoAckIcon(type: AlertType): boolean {\n return [\n AlertType.Alarm,\n AlertType.LevelCritical,\n AlertType.LevelHigh,\n ].includes(type);\n}\n"],"names":["AlertBadgeComponent","AlertTwotoneComponent","AlertBlinkMode"],"mappings":"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"}