@turquoisehealth/pit-viper 2.241.1-dev.0 → 2.241.1-dev.2

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.
@@ -0,0 +1,6 @@
1
+ /** An option pinned in a sortable list: it can't be removed or reordered, and may carry a
2
+ * tooltip explaining why it's locked. */
3
+ export type LockedOption = {
4
+ id: string;
5
+ tooltip?: string;
6
+ };
@@ -0,0 +1,6 @@
1
+ /** An option pinned in a sortable list: it can't be removed or reordered, and may carry a
2
+ * tooltip explaining why it's locked. */
3
+ export type LockedOption = {
4
+ id: string;
5
+ tooltip?: string;
6
+ };
@@ -1,4 +1,5 @@
1
1
  import { MenuOption } from '../../../types';
2
+ import { LockedOption } from './types';
2
3
  import { DefineComponent, ComponentOptionsMixin, PublicProps, ComponentProvideOptions } from 'vue';
3
4
  export type PvSortableMenuListProps = {
4
5
  /** The full set of available options to choose from and reorder. */
@@ -14,17 +15,13 @@ export type PvSortableMenuListProps = {
14
15
  */
15
16
  showPlaceholders?: boolean;
16
17
  /**
17
- * Options that cannot be removed or reordered: they render with a lock icon, stay pinned
18
- * at the top of the active list, and every mutation (click, drag, placeholder drop)
19
- * re-asserts them. Ids must refer to options that are already active.
18
+ * Options that cannot be removed or reordered: they render with a lock icon and grayed
19
+ * text, stay pinned at the top of the active list, and every mutation (click, drag,
20
+ * placeholder drop) re-asserts them. Ids must refer to options that are already active.
21
+ * An entry's optional `tooltip` explains WHY it is locked, rendered as an info icon
22
+ * (e.g. "Select a single drug to unlock").
20
23
  */
21
- lockedOptionIds?: string[];
22
- /**
23
- * Optional per-option explanation for WHY an option is locked, keyed by option id. A locked
24
- * option with an entry renders an info icon whose tooltip shows the text (e.g. "Select a
25
- * single drug to unlock"). Ignored for options that aren't locked.
26
- */
27
- lockedOptionTooltips?: Record<string, string>;
24
+ lockedOptions?: LockedOption[];
28
25
  };
29
26
  type __VLS_Props = PvSortableMenuListProps;
30
27
  type __VLS_PublicProps = {
@@ -38,7 +35,7 @@ declare const _default: DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, Compo
38
35
  options: MenuOption[];
39
36
  placeholderText: string;
40
37
  showPlaceholders: boolean;
41
- lockedOptionIds: string[];
38
+ lockedOptions: LockedOption[];
42
39
  }, {}, {}, {}, string, ComponentProvideOptions, false, {
43
40
  containerRef: HTMLDivElement;
44
41
  sortableListRef: HTMLUListElement;
@@ -0,0 +1,6 @@
1
+ /** An option pinned in a sortable list: it can't be removed or reordered, and may carry a
2
+ * tooltip explaining why it's locked. */
3
+ export type LockedOption = {
4
+ id: string;
5
+ tooltip?: string;
6
+ };
@@ -1,4 +1,5 @@
1
1
  import { ChartConfigPanelType, ChartFilter, ChartSeriesAggFuncSelectedEvent } from '../types';
2
+ import { LockedOption } from '../../../base/PvSortableList/types';
2
3
  import { VNodeProps, AllowedComponentProps, ComponentCustomProps, PublicProps, ShallowUnwrapRef, VNode } from 'vue';
3
4
  export interface PvChartOptionsPanelProps {
4
5
  enablePanel: boolean;
@@ -7,12 +8,10 @@ export interface PvChartOptionsPanelProps {
7
8
  useCombinedButton?: boolean;
8
9
  useNestedMenu?: boolean;
9
10
  chartConfigOptions?: ChartConfigPanelType[];
10
- /** Row-group colIds that are pinned in the sortable X Axis list: locked options can't be
11
- * removed or reordered (see PvSortableList's lockedOptionIds). */
12
- lockedRowGroupColIds?: string[];
13
- /** Per-colId explanation for why an X Axis option is locked, shown as an info tooltip on the
14
- * locked list entry (see PvSortableList's lockedOptionTooltips). */
15
- lockedRowGroupTooltips?: Record<string, string>;
11
+ /** Row-group columns pinned in the sortable X Axis list: locked options can't be removed or
12
+ * reordered, and an entry's optional `tooltip` explains why (see PvSortableList's
13
+ * lockedOptions). */
14
+ lockedRowGroupOptions?: LockedOption[];
16
15
  /** Keep the Metric Overlay picker enabled when a secondary row group splits a non-stacked
17
16
  * chart into per-group series (see PvDataTableWithChart's metricOverlayWithRowGroups). */
18
17
  metricOverlayWithRowGroups?: boolean;
@@ -2,6 +2,7 @@ import { Component, CSSProperties } from 'vue';
2
2
  import { AgChartOptions } from 'ag-charts-enterprise';
3
3
  import { AdvancedFilterModel, ColumnVO, FilterModel, ValueFormatterFunc } from 'ag-grid-enterprise';
4
4
  import { Option } from '../../../types';
5
+ import { LockedOption } from '../../base/PvSortableList/types';
5
6
  import { ChartTooltipRenderer, PvDataTableProps } from '../../tables/PvDataTable/types';
6
7
  import { FocusData } from '../../tables/PvDataTable/useFocus';
7
8
  export type supportedChartType = "column" | "bar" | "column_stacked" | "bar_stacked" | "line" | "area" | "pie" | "histogram" | "map";
@@ -189,19 +190,15 @@ export interface PvDataTableWithChartProps<T> extends PvDataTableProps<T> {
189
190
  */
190
191
  metricOverlayWithRowGroups?: boolean;
191
192
  /**
192
- * Row-group colIds pinned in the sortable X Axis picker: locked options render with a lock
193
- * icon and cannot be removed or reordered (see PvSortableList's `lockedOptionIds`). Use for
194
- * charts whose first dimension is structural (e.g. a time axis on a trends template).
195
- * Locked ids are also enforced as active: any locked id missing from the current row groups
196
- * is prepended (in locked order), so a caller can drive a structural breakout reactively
197
- * (e.g. force a per-drug split while multiple drugs are selected).
193
+ * Row-group columns pinned in the sortable X Axis picker: locked options render with a lock
194
+ * icon and grayed text, and cannot be removed or reordered (see PvSortableList's
195
+ * `lockedOptions`). Use for charts whose first dimension is structural (e.g. a time axis on
196
+ * a trends template). Locked ids are also enforced as active: any locked id missing from the
197
+ * current row groups is prepended (in locked order), so a caller can drive a structural
198
+ * breakout reactively (e.g. force a per-drug split while multiple drugs are selected). An
199
+ * entry's optional `tooltip` explains why it's locked, shown as an info icon on the entry.
198
200
  */
199
- lockedRowGroupColIds?: string[];
200
- /**
201
- * Per-colId explanation for why an X Axis option is locked, keyed by colId. Shown as an
202
- * info tooltip on the locked entry in the X Axis picker.
203
- */
204
- lockedRowGroupTooltips?: Record<string, string>;
201
+ lockedRowGroupOptions?: LockedOption[];
205
202
  /**
206
203
  * Explicit display order for the X Axis picker's options, as colIds. Options listed here
207
204
  * sort by their position; unlisted options keep their existing relative order after them.