@turquoisehealth/pit-viper 2.252.0 → 2.253.0

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 (67) hide show
  1. package/_site/assets/css/pit-viper-a11y.css +27 -7
  2. package/_site/assets/css/pit-viper-consumer.css +27 -7
  3. package/_site/assets/css/pit-viper-v2-scoped.css +25 -7
  4. package/_site/assets/css/pit-viper-v2.css +27 -7
  5. package/_site/assets/css/pit-viper.css +27 -7
  6. package/package.json +1 -1
  7. package/pv-components/dist/stats/vue/base/stats.html +1 -1
  8. package/pv-components/dist/stats/vue/visualizations/stats.html +1 -1
  9. package/pv-components/dist/stats/web/pv-action-button-stats.html +1 -1
  10. package/pv-components/dist/stats/web/pv-drawer-stats.html +1 -1
  11. package/pv-components/dist/stats/web/pv-filter-modal-stats.html +1 -1
  12. package/pv-components/dist/stats/web/pv-filter-panel-stats.html +1 -1
  13. package/pv-components/dist/stats/web/pv-hover-action-menu-stats.html +1 -1
  14. package/pv-components/dist/stats/web/pv-menu-stats.html +1 -1
  15. package/pv-components/dist/stats/web/pv-multi-select-button-stats.html +1 -1
  16. package/pv-components/dist/stats/web/pv-popover-v2-stats.html +1 -1
  17. package/pv-components/dist/stats/web/pv-query-builder-input-stats.html +1 -1
  18. package/pv-components/dist/stats/web/pv-segmented-control-stats.html +1 -1
  19. package/pv-components/dist/stats/web/pv-select-button-stats.html +1 -1
  20. package/pv-components/dist/stats/web/pv-sidebar-v2-stats.html +1 -1
  21. package/pv-components/dist/stats/web/pv-sortable-list-stats.html +1 -1
  22. package/pv-components/dist/stats/web/pv-split-button-stats.html +1 -1
  23. package/pv-components/dist/stats/web/pv-tabs-stats.html +1 -1
  24. package/pv-components/dist/stats/web/pv-toggle-group-stats.html +1 -1
  25. package/pv-components/dist/stats/web/pv-tooltip-v2-stats.html +1 -1
  26. package/pv-components/dist/vue/ai/components/base/PvDrawer/PvDrawer.vue.d.ts +2 -0
  27. package/pv-components/dist/vue/ai/components/base/PvPopoverV2/types.d.ts +8 -0
  28. package/pv-components/dist/vue/ai/components/base/PvPopoverV2/useHoverPopoverGroup.d.ts +4 -1
  29. package/pv-components/dist/vue/ai/components/base/PvTabs/PvTabs.vue.d.ts +5 -1
  30. package/pv-components/dist/vue/ai/components/base/PvTabs/types.d.ts +4 -0
  31. package/pv-components/dist/vue/base/components/base/PvDrawer/PvDrawer.vue.d.ts +2 -0
  32. package/pv-components/dist/vue/base/components/base/PvPopoverV2/types.d.ts +8 -0
  33. package/pv-components/dist/vue/base/components/base/PvPopoverV2/useHoverPopoverGroup.d.ts +4 -1
  34. package/pv-components/dist/vue/base/components/base/PvTabs/PvTabs.vue.d.ts +5 -1
  35. package/pv-components/dist/vue/base/components/base/PvTabs/types.d.ts +4 -0
  36. package/pv-components/dist/vue/base/pv-components-base.mjs +1023 -929
  37. package/pv-components/dist/vue/base/pv-components-base.mjs.map +1 -1
  38. package/pv-components/dist/vue/visualizations/components/base/PvDrawer/PvDrawer.vue.d.ts +2 -0
  39. package/pv-components/dist/vue/visualizations/components/base/PvPopoverV2/types.d.ts +8 -0
  40. package/pv-components/dist/vue/visualizations/components/base/PvPopoverV2/useHoverPopoverGroup.d.ts +4 -1
  41. package/pv-components/dist/vue/visualizations/components/base/PvTabs/PvTabs.vue.d.ts +5 -1
  42. package/pv-components/dist/vue/visualizations/components/base/PvTabs/types.d.ts +4 -0
  43. package/pv-components/dist/vue/visualizations/components/charts/PvDataTableWithChart/types.d.ts +6 -0
  44. package/pv-components/dist/vue/visualizations/components/tables/PvDataTable/table-components/FilterPanel.vue.d.ts +5 -1
  45. package/pv-components/dist/vue/visualizations/components/tables/PvDataTable/table-components/horizontalFilterFit.d.ts +17 -0
  46. package/pv-components/dist/vue/visualizations/components/tables/PvDataTable/types.d.ts +9 -2
  47. package/pv-components/dist/vue/visualizations/pv-components-visualizations.mjs +2398 -2357
  48. package/pv-components/dist/vue/visualizations/pv-components-visualizations.mjs.map +1 -1
  49. package/pv-components/dist/web/components/pv-action-button/pv-action-button.js +226 -223
  50. package/pv-components/dist/web/components/pv-drawer/pv-drawer.js +5 -3
  51. package/pv-components/dist/web/components/pv-filter-modal/pv-filter-modal.js +1735 -1732
  52. package/pv-components/dist/web/components/pv-filter-panel/pv-filter-panel.js +356 -353
  53. package/pv-components/dist/web/components/pv-hover-action-menu/pv-hover-action-menu.js +650 -647
  54. package/pv-components/dist/web/components/pv-menu/pv-menu.js +1241 -1238
  55. package/pv-components/dist/web/components/pv-multi-select-button/pv-multi-select-button.js +421 -418
  56. package/pv-components/dist/web/components/pv-popover-v2/pv-popover-v2.js +108 -106
  57. package/pv-components/dist/web/components/pv-query-builder-input/pv-query-builder-input.js +70 -67
  58. package/pv-components/dist/web/components/pv-segmented-control/pv-segmented-control.js +343 -340
  59. package/pv-components/dist/web/components/pv-select-button/pv-select-button.js +146 -143
  60. package/pv-components/dist/web/components/pv-sidebar-v2/pv-sidebar-v2.js +805 -802
  61. package/pv-components/dist/web/components/pv-sortable-list/pv-sortable-list.js +362 -359
  62. package/pv-components/dist/web/components/pv-split-button/pv-split-button.js +694 -692
  63. package/pv-components/dist/web/components/pv-tabs/pv-tabs.js +1312 -1185
  64. package/pv-components/dist/web/components/pv-toggle-group/pv-toggle-group.js +177 -174
  65. package/pv-components/dist/web/components/pv-tooltip-v2/pv-tooltip-v2.js +227 -224
  66. package/pv-components/dist/web/pv-components.iife.js +14 -14
  67. package/pv-components/dist/web/pv-components.iife.js.map +1 -1
@@ -6,6 +6,8 @@ export interface PvDrawerProps {
6
6
  /** Initial resizable width. Defaults to 600px, capped by the viewport. */
7
7
  defaultWidth?: PvResizeSize;
8
8
  header?: string;
9
+ /** Omit the built-in header when the drawer content provides its own. */
10
+ hideHeader?: boolean;
9
11
  /** Defaults to the viewport width. Percentages resolve against the viewport. */
10
12
  maxWidth?: PvResizeSize;
11
13
  /** Only used when `resizable` is set. */
@@ -10,6 +10,14 @@ export interface PvPopoverV2Props {
10
10
  positioningStrategy?: Strategy;
11
11
  /** When true, the popover opens on hover instead of click. */
12
12
  showOnHover?: boolean;
13
+ /**
14
+ * CSS selector for an ancestor of the trigger whose hover opens the popover, in place of the
15
+ * trigger's own. For a trigger that is only part of a larger hover area, e.g. `".pv-tree-item"`
16
+ * for a whole tree row. The trigger still anchors the popover. Falls back to the trigger when no
17
+ * ancestor matches. Only applies when `showOnHover` is enabled. With `enableGroupSync`, a synced
18
+ * popover opening inside this area (e.g. a button's tooltip in the same row) does not close it.
19
+ */
20
+ hoverTarget?: string;
13
21
  /** When true and showOnHover is enabled, hovering the popover does not keep it open. */
14
22
  disableInteractive?: boolean;
15
23
  /**
@@ -3,6 +3,8 @@ export type HoverPopover = {
3
3
  root: Ref<HTMLElement | null>;
4
4
  /** The surface, which may be teleported out of `root`, so popovers nested in it still count as descendants. */
5
5
  floating?: Ref<HTMLElement | null>;
6
+ /** The `hoverTarget` ancestor, when set: popovers opening inside it are within this one's hover area too. */
7
+ hoverArea?: Ref<HTMLElement | null>;
6
8
  /** Attempts to close the popover. Returns false if it refused (e.g. disableClickOutsideToClose). */
7
9
  close: () => boolean;
8
10
  };
@@ -10,7 +12,8 @@ export type HoverPopover = {
10
12
  * Keeps at most one dismissible hover popover on screen at a time. Uncoordinated, a sweep
11
13
  * across a list of triggers paints a trail: each popover the pointer left is still counting
12
14
  * down its `closeDelay` bridge while the next one opens instantly. Ancestors are spared — a
13
- * nested popover opening means the pointer is still inside the outer one. A popover that
15
+ * nested popover opening means the pointer is still inside the outer one. That includes one opening
16
+ * anywhere in the outer's `hoverTarget` area (e.g. a tooltip on a button in the same row). A popover that
14
17
  * refuses to close (disableClickOutsideToClose) stays on screen alongside newly opened ones.
15
18
  *
16
19
  * Returns a setter for this popover's on-screen state.
@@ -1,6 +1,8 @@
1
1
  import { Tab, TabSize } from './types';
2
2
  import { DefineComponent, ComponentOptionsMixin, PublicProps, ComponentProvideOptions } from 'vue';
3
3
  interface PvTabsProps {
4
+ /** Folds the tabs that don't fit into a "+N more" menu, keeping "addButton" tabs visible after it. */
5
+ collapseOverflow?: boolean;
4
6
  /** Array of tab objects defining each tab's label, icon, and counter */
5
7
  tabs: Tab[];
6
8
  /** Size of the tab list */
@@ -22,5 +24,7 @@ declare const _default: DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, Compo
22
24
  "onOption-click"?: ((tabValue: string, optionValue: string) => any) | undefined;
23
25
  }>, {
24
26
  size: TabSize;
25
- }, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLUListElement>;
27
+ }, {}, {}, {}, string, ComponentProvideOptions, false, {
28
+ listRef: HTMLUListElement;
29
+ }, HTMLUListElement>;
26
30
  export default _default;
@@ -12,6 +12,10 @@ export interface Tab {
12
12
  counter?: number;
13
13
  /** Display text for the tab */
14
14
  label: string;
15
+ /** When true, the tab can't be clicked or selected, and renders in a disabled style */
16
+ disabled?: boolean;
17
+ /** Optional hover text explaining why the tab is disabled; only shown while `disabled` is true */
18
+ disabledReason?: string;
15
19
  /** Optional icon name displayed before the tab label */
16
20
  icon?: string;
17
21
  /** Optional stable identifier used for selection; falls back to label */
@@ -138,6 +138,12 @@ export interface ColumnConfigurationChangeEvent {
138
138
  /** Hidden column ids before this change was applied. */
139
139
  previousHiddenColIds: string[];
140
140
  }
141
+ /**
142
+ * @deprecated PvDataTableWithChart has moved to tq-site as a local component
143
+ * (`src/common/components/DataTableWithChart`) and is no longer maintained here. It will be
144
+ * removed from Pit Viper in a future release — migrate any remaining usage to the tq-site
145
+ * component.
146
+ */
141
147
  export interface PvDataTableWithChartProps<T> extends PvDataTableProps<T> {
142
148
  /**
143
149
  * Boolean flag denoting whether all fields are focusable, meaning their filter options can be selected as focus in
@@ -14,7 +14,11 @@ declare const _default: <T>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>
14
14
  props: __VLS_PrettifyLocal<Pick<Partial<{}> & Omit<{
15
15
  readonly "onHandle-settings-icon"?: ((value: string) => any) | undefined;
16
16
  } & VNodeProps & AllowedComponentProps & ComponentCustomProps, never>, "onHandle-settings-icon"> & FilterPanelProps & Partial<{}>> & PublicProps;
17
- expose(exposed: ShallowUnwrapRef<{}>): void;
17
+ expose(exposed: ShallowUnwrapRef<{
18
+ openVerticalDrawer: () => void;
19
+ openHorizontalFilter: (field: string) => boolean;
20
+ isHorizontalFilterCollapsed: (field: string) => boolean;
21
+ }>): void;
18
22
  attrs: any;
19
23
  slots: {};
20
24
  emit: (e: "handle-settings-icon", value: string) => void;
@@ -0,0 +1,17 @@
1
+ export interface HorizontalFilterFitOptions {
2
+ /** Rendered width of each filter control, in display order. */
3
+ itemWidths: number[];
4
+ /** Width available to the filter row. */
5
+ containerWidth: number;
6
+ /** Width of the always-visible actions that follow the filters (0 if none). */
7
+ trailingWidth: number;
8
+ /** Flex gap between row children. */
9
+ gap: number;
10
+ /** Index of a filter that must stay visible when it fits (e.g. opened from a column menu). */
11
+ pinnedIndex?: number;
12
+ }
13
+ /**
14
+ * Returns the indexes of the filters that fit on a single row alongside the trailing actions.
15
+ * Filters collapse one at a time from the end; the pinned filter is kept ahead of the others.
16
+ */
17
+ export declare const getVisibleFilterIndexes: ({ itemWidths, containerWidth, trailingWidth, gap, pinnedIndex, }: HorizontalFilterFitOptions) => Set<number>;
@@ -457,9 +457,16 @@ export interface PvDataTableProps<T> {
457
457
  * Enabled top-slot content moves to the opposite side of the same row.
458
458
  */
459
459
  tableSearchInline?: boolean;
460
- /** Maximum number of filter chips to display horizontally before collapsing */
460
+ /**
461
+ * Maximum number of filter chips to display horizontally.
462
+ * When the All Filters drawer is enabled and wrapping is not, chips also collapse from the end
463
+ * when the row runs out of space; collapsed filters remain available in the drawer.
464
+ */
461
465
  maxHorizontalFilters?: number;
462
- /** Allows horizontal filter controls to wrap onto additional rows. */
466
+ /**
467
+ * Allows horizontal filter controls to wrap onto additional rows instead of collapsing.
468
+ * Filters always wrap when `enableVerticalFilterPanel` is false.
469
+ */
463
470
  wrapHorizontalFilters?: boolean;
464
471
  /** If true, the filter panel is view-only: filters are visible but cannot be changed */
465
472
  filterPanelReadOnly?: boolean;