@rfkit/charts 1.3.13 → 1.4.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 (123) hide show
  1. package/README.md +57 -0
  2. package/components/AxisY/spectrum/controls/index.d.ts +3 -0
  3. package/components/AxisY/spectrum/index.d.ts +3 -2
  4. package/components/AxisY/spectrum/{components/Ticks → presenters/TicksPanel}/index.d.ts +3 -3
  5. package/components/AxisY/spectrum/presenters/index.d.ts +1 -0
  6. package/components/AxisY/spectrum/useRanging/index.d.ts +4 -1
  7. package/components/AxisY/spectrum/useRanging/ranging.d.ts +3 -1
  8. package/components/AxisYByCanvas/useCanvasAxisY.d.ts +2 -2
  9. package/components/Cursor/registry.d.ts +7 -0
  10. package/components/DragSelectBox/index.d.ts +3 -1
  11. package/components/FrequencyAllocation/index.d.ts +2 -2
  12. package/components/FrequencyAllocation/model/index.d.ts +4 -0
  13. package/components/FrequencyAllocation/model/resolveFrequencyAllocationData.d.ts +2 -0
  14. package/components/FrequencyAllocation/model/resolver.d.ts +18 -0
  15. package/components/FrequencyAllocation/model/useAllocationAtCursor.d.ts +6 -0
  16. package/components/FrequencyAllocation/model/useFrequencyAllocationData.d.ts +1 -0
  17. package/components/FrequencyAllocation/overlays/Tooltip/index.d.ts +4 -0
  18. package/components/FrequencyAllocation/overlays/index.d.ts +1 -0
  19. package/components/FrequencyAllocation/{AllocationInfo → presenters/AllocationInfo}/index.d.ts +1 -1
  20. package/components/FrequencyAllocation/presenters/AllocationSegments/index.d.ts +12 -0
  21. package/components/FrequencyAllocation/presenters/index.d.ts +2 -0
  22. package/components/FrequencyDataBoard/hooks/index.d.ts +1 -0
  23. package/components/FrequencyDataBoard/hooks/useStationInfoAtCursor.d.ts +1 -0
  24. package/components/FrequencyDataBoard/index.d.ts +1 -0
  25. package/components/FrequencyDataBoard/{StationInfo → panels/StationInfoPanel}/index.d.ts +1 -1
  26. package/components/FrequencyDataBoard/panels/index.d.ts +1 -0
  27. package/components/FrequencyTagLine/index.d.ts +1 -1
  28. package/components/GridLines/OccupancyDashed/index.d.ts +3 -0
  29. package/components/{Dropdown → Overlay/Dropdown}/index.d.ts +10 -2
  30. package/components/{Tooltip → Overlay/Tooltip}/index.d.ts +1 -1
  31. package/components/Overlay/index.d.ts +4 -0
  32. package/components/Signal/index.d.ts +2 -1
  33. package/components/Signal/metadata/index.d.ts +1 -0
  34. package/components/Signal/model/index.d.ts +3 -0
  35. package/components/Signal/model/resolver.d.ts +40 -0
  36. package/components/Signal/model/useStationInfoAtCursor.d.ts +7 -0
  37. package/components/Signal/model/useUnifiedSignals.d.ts +6 -0
  38. package/components/Signal/presenters/SignalSegments/index.d.ts +10 -0
  39. package/components/Signal/presenters/index.d.ts +1 -0
  40. package/components/Signal/utils.d.ts +13 -1
  41. package/components/ToolsBar/{SeriesControl → controls/SeriesControl}/index.d.ts +1 -1
  42. package/components/ToolsBar/controls/index.d.ts +4 -0
  43. package/components/ToolsBar/{GradientRibbon → decorations/GradientRibbon}/index.d.ts +1 -1
  44. package/components/ToolsBar/decorations/index.d.ts +2 -0
  45. package/components/ToolsBar/primitives/IconBox.d.ts +11 -0
  46. package/components/ToolsBar/primitives/ToolbarContentBox.d.ts +11 -0
  47. package/components/ToolsBar/primitives/ToolbarDropdown.d.ts +16 -0
  48. package/components/ToolsBar/primitives/ToolbarGlyph.d.ts +10 -0
  49. package/components/ToolsBar/primitives/ToolbarGroup.d.ts +10 -0
  50. package/components/ToolsBar/primitives/ToolbarGroupIconBox.d.ts +5 -0
  51. package/components/ToolsBar/primitives/ToolbarSurface.d.ts +15 -0
  52. package/components/ToolsBar/primitives/index.d.ts +8 -0
  53. package/components/ToolsBar/primitives/styles.d.ts +41 -0
  54. package/components/ToolsBar/registry.d.ts +12 -0
  55. package/components/ToolsBar/toggles/index.d.ts +10 -0
  56. package/components/ui/button.d.ts +16 -0
  57. package/components/ui/checkbox.d.ts +4 -0
  58. package/components/ui/cursor-follow-layer.d.ts +10 -0
  59. package/components/ui/dialog.d.ts +12 -0
  60. package/components/ui/dropdown-menu.d.ts +9 -0
  61. package/components/ui/input.d.ts +1 -0
  62. package/components/ui/number-input.d.ts +10 -0
  63. package/components/ui/panel.d.ts +9 -0
  64. package/components/ui/popover.d.ts +7 -0
  65. package/components/ui/scroll-area.d.ts +5 -0
  66. package/components/ui/select.d.ts +11 -0
  67. package/components/ui/separator.d.ts +4 -0
  68. package/components/ui/slider.d.ts +2 -0
  69. package/components/ui/switch.d.ts +2 -0
  70. package/components/ui/tabs.d.ts +7 -0
  71. package/components/ui/tooltip.d.ts +7 -0
  72. package/components/ui/useChartsPortalContainer.d.ts +1 -0
  73. package/config/setting.d.ts +3 -3
  74. package/hooks/index.d.ts +2 -2
  75. package/hooks/publish/enhancedPublish.d.ts +17 -0
  76. package/hooks/publish/index.d.ts +1 -0
  77. package/hooks/publish/useSafePublish.d.ts +2 -8
  78. package/hooks/useChartComponent.d.ts +0 -6
  79. package/hooks/useDragSelect.d.ts +2 -0
  80. package/index.d.ts +4 -0
  81. package/index.js +19316 -7774
  82. package/lib/index.d.ts +1 -1
  83. package/package.json +8 -1
  84. package/store/Params.d.ts +2 -1
  85. package/store/constants.d.ts +2 -3
  86. package/store/context.d.ts +1 -1
  87. package/store/globalState.d.ts +4 -0
  88. package/store/hooks/index.d.ts +1 -0
  89. package/store/index.d.ts +1 -1
  90. package/store/reducer.d.ts +0 -34
  91. package/tailwind-bridge.css +123 -0
  92. package/theme/charts-theme-controller.d.ts +27 -0
  93. package/theme/charts-theme-environment.d.ts +7 -0
  94. package/theme/init-charts-theme.d.ts +16 -0
  95. package/theme/shadcn-theme-config.d.ts +221 -0
  96. package/theme/style-scope.d.ts +21 -0
  97. package/types/store/ui.d.ts +15 -1
  98. package/utils/cn.d.ts +2 -0
  99. package/utils/converter.d.ts +1 -1
  100. package/utils/cursor.d.ts +12 -0
  101. package/utils/frequencyCalculation.d.ts +8 -0
  102. package/utils/index.d.ts +1 -0
  103. package/utils/subscription.d.ts +1 -0
  104. package/utils/theme.d.ts +2 -2
  105. package/components/FrequencyAllocation/SegmentContainer.d.ts +0 -12
  106. package/components/FrequencyAllocation/Tooltip/index.d.ts +0 -8
  107. package/components/FrequencyAllocation/useAllocationFinder.d.ts +0 -10
  108. package/components/GridLines/Occdahsed/index.d.ts +0 -3
  109. package/components/Signal/SegmentContainer.d.ts +0 -26
  110. package/components/Signal/useStationFinder.d.ts +0 -12
  111. package/components/ToolsBar/IconBox.d.ts +0 -12
  112. /package/components/AxisY/spectrum/{components/Autoranging/index.d.ts → controls/AutorangingControl.d.ts} +0 -0
  113. /package/components/AxisY/spectrum/{components/Step/index.d.ts → controls/StepControl.d.ts} +0 -0
  114. /package/components/AxisY/spectrum/{components/Unit/index.d.ts → controls/UnitControl.d.ts} +0 -0
  115. /package/components/Cursor/{Popover → popovers}/index.d.ts +0 -0
  116. /package/components/{GuageBox → GaugeBox}/index.d.ts +0 -0
  117. /package/components/{Popover → Overlay/Popover}/index.d.ts +0 -0
  118. /package/components/{Portal → Overlay/Portal}/index.d.ts +0 -0
  119. /package/components/Signal/{type.d.ts → metadata/signalType.d.ts} +0 -0
  120. /package/components/ToolsBar/{Reset.d.ts → controls/Reset.d.ts} +0 -0
  121. /package/components/ToolsBar/{SegmentsDisplayControl → controls/SegmentsDisplayControl}/index.d.ts +0 -0
  122. /package/components/ToolsBar/{SeriesDisplayControl → controls/SeriesDisplayControl}/index.d.ts +0 -0
  123. /package/components/ToolsBar/{SpacerLine.d.ts → decorations/SpacerLine.d.ts} +0 -0
@@ -0,0 +1,41 @@
1
+ export declare const TOOLBAR_SHELL_CLASS_NAME = "relative flex h-10 w-full items-center justify-between pl-[var(--size-gap-base)] text-xs text-foreground";
2
+ export declare const TOOLBAR_SHELL_STYLE: {
3
+ readonly background: "linear-gradient(to bottom, color-mix(in srgb, var(--background) 100%, transparent), color-mix(in srgb, var(--background) 86%, transparent))";
4
+ readonly boxShadow: "0 1px 4px color-mix(in srgb, var(--border) 72%, transparent)";
5
+ };
6
+ export declare const TOOLBAR_ITEMS_CLASS_NAME = "flex h-full items-center gap-[var(--size-gap-base)]";
7
+ export declare const TOOLBAR_SEPARATOR_BASE_CLASS_NAME = "self-center";
8
+ export declare const TOOLBAR_SEPARATOR_CLASS_NAME = "self-center h-[18px]";
9
+ export declare const TOOLBAR_GROUP_SEPARATOR_CLASS_NAME = "self-center h-3.5";
10
+ export declare const TOOLBAR_SURFACE_CLASS_NAME = "pointer-events-auto box-border rounded-[var(--radius-group)] bg-secondary text-inherit transition-[background-color,color,opacity] select-none";
11
+ export declare const TOOLBAR_INTERACTIVE_SURFACE_CLASS_NAME = "cursor-pointer appearance-none border-0 hover:bg-accent/72 hover:text-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-primary/70 focus-visible:ring-offset-1 focus-visible:ring-offset-background";
12
+ export declare const TOOLBAR_DISABLED_SURFACE_CLASS_NAME = "cursor-not-allowed opacity-45 hover:bg-secondary";
13
+ export declare const TOOLBAR_TONE_CLASS_NAME_MAP: {
14
+ readonly default: "text-foreground";
15
+ readonly primary: "text-primary";
16
+ readonly warning: "text-warning";
17
+ readonly destructive: "text-destructive";
18
+ };
19
+ export declare const TOOLBAR_ACTIVE_SURFACE_CLASS_NAME_MAP: {
20
+ readonly default: "data-[active=true]:bg-accent/72 data-[active=true]:text-foreground data-[active=true]:shadow-[inset_0_0_0_1px_color-mix(in_srgb,var(--border)_72%,transparent)] data-[active=true]:hover:bg-accent/72";
21
+ readonly primary: "data-[active=true]:bg-accent/72 data-[active=true]:text-primary data-[active=true]:shadow-[inset_0_0_0_1px_color-mix(in_srgb,var(--border)_72%,transparent)] data-[active=true]:hover:bg-accent/72";
22
+ readonly warning: "data-[active=true]:bg-warning/10 data-[active=true]:text-warning data-[active=true]:shadow-[inset_0_0_0_1px_color-mix(in_srgb,var(--warning)_24%,transparent)] data-[active=true]:hover:bg-warning/12";
23
+ readonly destructive: "data-[active=true]:bg-destructive/10 data-[active=true]:text-destructive data-[active=true]:shadow-[inset_0_0_0_1px_color-mix(in_srgb,var(--destructive)_24%,transparent)] data-[active=true]:hover:bg-destructive/12";
24
+ };
25
+ export type ToolbarTone = keyof typeof TOOLBAR_TONE_CLASS_NAME_MAP;
26
+ export declare const TOOLBAR_ICON_TRIGGER_CLASS_NAME = "inline-flex h-[26px] min-w-[26px] shrink-0 items-center justify-center";
27
+ export declare const TOOLBAR_ICON_BOX_CLASS_NAME = "pointer-events-auto box-border rounded-[var(--radius-group)] bg-secondary text-inherit transition-[background-color,color,opacity] select-none inline-flex h-[26px] min-w-[26px] shrink-0 items-center justify-center px-1 [&_svg]:size-4 [&_svg]:shrink-0 [&>span]:flex [&>span]:items-center [&>span]:justify-center";
28
+ export declare const TOOLBAR_OUTLINED_SHELL_CLASS_NAME = "inline-flex h-[26px] shrink-0 items-stretch overflow-hidden rounded-[var(--radius-group)] border border-solid border-border/60 transition-colors";
29
+ export declare const TOOLBAR_OUTLINED_TRIGGER_CLASS_NAME = "inline-flex h-[26px] shrink-0 items-stretch overflow-hidden rounded-[var(--radius-group)] border border-solid border-border/60 transition-colors min-w-10 items-center justify-between gap-1 px-[calc(var(--size-gap-base)/2)] hover:bg-accent/72 hover:text-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-primary/70 focus-visible:ring-offset-1 focus-visible:ring-offset-background";
30
+ export declare const TOOLBAR_OUTLINED_TRIGGER_OPEN_CLASS_NAME = "data-[state=open]:bg-accent/72 data-[state=open]:text-foreground data-[state=open]:shadow-[inset_0_0_0_1px_color-mix(in_srgb,var(--border)_72%,transparent)] data-[state=open]:hover:bg-accent/72";
31
+ export declare const TOOLBAR_INLINE_TRIGGER_CLASS_NAME = "inline-flex h-full min-h-0 min-w-0 items-center gap-1 p-0 text-inherit focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-primary/70 focus-visible:ring-offset-1 focus-visible:ring-offset-background";
32
+ export declare const TOOLBAR_INLINE_INSET_CLASS_NAME = "inline-flex h-full items-center px-[calc(var(--size-gap-base)/2)] text-primary hover:bg-accent/72 data-[state=open]:bg-accent/72 data-[state=open]:hover:bg-accent/72";
33
+ export declare const TOOLBAR_GROUP_CHILD_CLASS_NAME = "h-full rounded-none border-0 bg-transparent shadow-none";
34
+ export declare const TOOLBAR_CONTENT_BOX_CLASS_NAME = "pointer-events-auto box-border rounded-[var(--radius-group)] bg-secondary text-inherit transition-[background-color,color,opacity] select-none inline-flex h-[26px] min-w-[26px] shrink-0 items-center px-1";
35
+ export declare const TOOLBAR_CONTENT_BODY_CLASS_NAME = "inline-flex h-[14px] min-w-0 items-center justify-center text-xs leading-none";
36
+ export declare const TOOLBAR_CONTENT_ICON_CLASS_NAME = "w-4 justify-center";
37
+ export declare const TOOLBAR_CONTENT_VALUE_CLASS_NAME = "min-w-8 justify-center text-center";
38
+ export declare const TOOLBAR_CONTENT_GRADIENT_CLASS_NAME = "w-[60px] justify-stretch";
39
+ export declare const TOOLBAR_TRIGGER_ICON_CLASS_NAME = "inline-flex h-full min-w-4 shrink-0 items-center justify-center text-primary";
40
+ export declare const TOOLBAR_GLYPH_CLASS_NAME = "inline-flex size-4 shrink-0 items-center justify-center [&_svg]:size-full [&_svg]:shrink-0";
41
+ export declare const TOOLBAR_DROPDOWN_CONTENT_CLASS_NAME = "border-border/80 bg-secondary/92 text-foreground shadow-[0_10px_28px_color-mix(in_srgb,var(--background)_60%,transparent)] backdrop-blur-xl";
@@ -0,0 +1,12 @@
1
+ import type React from 'react';
2
+ import { ChartType, ToolsBarItemType } from '../../config';
3
+ export interface ToolConfig {
4
+ component: React.ComponentType<Record<string, unknown>>;
5
+ toolType: ToolsBarItemType;
6
+ supportedCharts: ChartType[];
7
+ excludedCharts?: ChartType[];
8
+ props?: Record<string, unknown>;
9
+ }
10
+ export declare const TOOL_CONFIGS: ToolConfig[];
11
+ export declare const isToolConfigVisible: (config: ToolConfig, chartType: ChartType | undefined, hiddenTools?: string[]) => boolean;
12
+ export declare const resolveToolConfigProps: (config: ToolConfig, chartType: ChartType | undefined) => Record<string, unknown>;
@@ -0,0 +1,10 @@
1
+ export { AutorangingControl as AutorangingSwitch, UnitControl as UnitSwitch } from '../../AxisY/spectrum/controls';
2
+ export { default as DeltaMeasurementSwitch } from '../../DeltaMeasurement/Switch';
3
+ export { default as FrequencyAllocationSwitch } from '../../FrequencyAllocation/Switch';
4
+ export { default as HeatmapCaptureSwitch } from '../../HeatmapCapture/Switch';
5
+ export { default as LimitSwitch } from '../../Limit/Switch';
6
+ export { default as MarkersSwitch } from '../../Markers/Switch';
7
+ export { default as SignalSwitch } from '../../Signal/Switch';
8
+ export { default as TimeRangeSwitch } from '../../TimeRange/Switch';
9
+ export { default as ZoomSwitch } from '../../Zoom/Switch';
10
+ export { default as FluorescenceSwitch } from '../../../modules/Fluorescence/Switch';
@@ -0,0 +1,16 @@
1
+ import { type VariantProps } from 'class-variance-authority';
2
+ import type { ButtonHTMLAttributes } from 'react';
3
+ declare const buttonVariants: (props?: {
4
+ variant?: "link" | "default" | "destructive" | "outline" | "secondary" | "ghost";
5
+ size?: "default" | "icon" | "sm" | "lg";
6
+ } & import("class-variance-authority/types").ClassProp) => string;
7
+ export type ButtonProps = ButtonHTMLAttributes<HTMLButtonElement> & VariantProps<typeof buttonVariants> & {
8
+ asChild?: boolean;
9
+ };
10
+ export declare const Button: import("react").ForwardRefExoticComponent<ButtonHTMLAttributes<HTMLButtonElement> & VariantProps<(props?: {
11
+ variant?: "link" | "default" | "destructive" | "outline" | "secondary" | "ghost";
12
+ size?: "default" | "icon" | "sm" | "lg";
13
+ } & import("class-variance-authority/types").ClassProp) => string> & {
14
+ asChild?: boolean;
15
+ } & import("react").RefAttributes<HTMLButtonElement>>;
16
+ export { buttonVariants };
@@ -0,0 +1,4 @@
1
+ import * as CheckboxPrimitive from '@radix-ui/react-checkbox';
2
+ import * as React from 'react';
3
+ declare const Checkbox: React.ForwardRefExoticComponent<Omit<CheckboxPrimitive.CheckboxProps & React.RefAttributes<HTMLButtonElement>, "ref"> & React.RefAttributes<HTMLButtonElement>>;
4
+ export { Checkbox };
@@ -0,0 +1,10 @@
1
+ import type React from 'react';
2
+ import type { CursorEventSnapshot } from '../../types/store';
3
+ interface CursorFollowLayerProps {
4
+ children: React.ReactNode;
5
+ event?: CursorEventSnapshot | null;
6
+ margin?: number;
7
+ className?: string;
8
+ }
9
+ declare const CursorFollowLayer: React.FC<CursorFollowLayerProps>;
10
+ export default CursorFollowLayer;
@@ -0,0 +1,12 @@
1
+ import * as DialogPrimitive from '@radix-ui/react-dialog';
2
+ import * as React from 'react';
3
+ declare function Dialog({ ...props }: React.ComponentProps<typeof DialogPrimitive.Root>): import("react/jsx-runtime").JSX.Element;
4
+ declare function DialogTrigger({ ...props }: React.ComponentProps<typeof DialogPrimitive.Trigger>): import("react/jsx-runtime").JSX.Element;
5
+ declare function DialogPortal({ ...props }: React.ComponentProps<typeof DialogPrimitive.Portal>): import("react/jsx-runtime").JSX.Element;
6
+ declare const DialogOverlay: React.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogOverlayProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
7
+ declare const DialogContent: React.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogContentProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
8
+ declare function DialogHeader({ className, ...props }: React.HTMLAttributes<HTMLDivElement>): import("react/jsx-runtime").JSX.Element;
9
+ declare function DialogFooter({ className, ...props }: React.HTMLAttributes<HTMLDivElement>): import("react/jsx-runtime").JSX.Element;
10
+ declare const DialogTitle: React.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogTitleProps & React.RefAttributes<HTMLHeadingElement>, "ref"> & React.RefAttributes<HTMLHeadingElement>>;
11
+ declare const DialogDescription: React.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogDescriptionProps & React.RefAttributes<HTMLParagraphElement>, "ref"> & React.RefAttributes<HTMLParagraphElement>>;
12
+ export { Dialog, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger };
@@ -0,0 +1,9 @@
1
+ import * as DropdownMenuPrimitive from '@radix-ui/react-dropdown-menu';
2
+ import * as React from 'react';
3
+ declare function DropdownMenu({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Root>): import("react/jsx-runtime").JSX.Element;
4
+ declare const DropdownMenuTrigger: React.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuTriggerProps & React.RefAttributes<HTMLButtonElement>, "ref"> & React.RefAttributes<HTMLButtonElement>>;
5
+ declare function DropdownMenuPortal({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Portal>): import("react/jsx-runtime").JSX.Element;
6
+ declare function DropdownMenuContent({ className, sideOffset, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Content>): import("react/jsx-runtime").JSX.Element;
7
+ declare const DropdownMenuItem: React.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuItemProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
8
+ declare const DropdownMenuSeparator: React.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuSeparatorProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
9
+ export { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuPortal, DropdownMenuSeparator, DropdownMenuTrigger };
@@ -0,0 +1 @@
1
+ export declare const Input: import("react").ForwardRefExoticComponent<Omit<import("react").DetailedHTMLProps<import("react").InputHTMLAttributes<HTMLInputElement>, HTMLInputElement>, "ref"> & import("react").RefAttributes<HTMLInputElement>>;
@@ -0,0 +1,10 @@
1
+ import type { ComponentProps } from 'react';
2
+ type NativeInputProps = Omit<ComponentProps<'input'>, 'type' | 'value' | 'defaultValue' | 'onChange'>;
3
+ export interface NumberInputProps extends NativeInputProps {
4
+ value?: number | null;
5
+ label?: string;
6
+ inputClassName?: string;
7
+ onValueChange?: (value: number | null) => void;
8
+ }
9
+ export declare const NumberInput: import("react").ForwardRefExoticComponent<Omit<NumberInputProps, "ref"> & import("react").RefAttributes<HTMLInputElement>>;
10
+ export {};
@@ -0,0 +1,9 @@
1
+ import { type VariantProps } from 'class-variance-authority';
2
+ import { type HTMLAttributes } from 'react';
3
+ export declare const panelVariants: (props?: {
4
+ variant?: "default" | "ghost" | "subtle" | "floating";
5
+ size?: "sm" | "lg" | "xs" | "md";
6
+ } & import("class-variance-authority/types").ClassProp) => string;
7
+ export interface PanelProps extends HTMLAttributes<HTMLDivElement>, VariantProps<typeof panelVariants> {
8
+ }
9
+ export declare const Panel: import("react").ForwardRefExoticComponent<PanelProps & import("react").RefAttributes<HTMLDivElement>>;
@@ -0,0 +1,7 @@
1
+ import * as PopoverPrimitive from '@radix-ui/react-popover';
2
+ import * as React from 'react';
3
+ declare function Popover({ ...props }: React.ComponentProps<typeof PopoverPrimitive.Root>): import("react/jsx-runtime").JSX.Element;
4
+ declare function PopoverTrigger({ ...props }: React.ComponentProps<typeof PopoverPrimitive.Trigger>): import("react/jsx-runtime").JSX.Element;
5
+ declare function PopoverAnchor({ ...props }: React.ComponentProps<typeof PopoverPrimitive.Anchor>): import("react/jsx-runtime").JSX.Element;
6
+ declare const PopoverContent: React.ForwardRefExoticComponent<Omit<PopoverPrimitive.PopoverContentProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
7
+ export { Popover, PopoverAnchor, PopoverContent, PopoverTrigger };
@@ -0,0 +1,5 @@
1
+ import * as ScrollAreaPrimitive from '@radix-ui/react-scroll-area';
2
+ import * as React from 'react';
3
+ declare const ScrollBar: React.ForwardRefExoticComponent<Omit<ScrollAreaPrimitive.ScrollAreaScrollbarProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
4
+ declare const ScrollArea: React.ForwardRefExoticComponent<Omit<ScrollAreaPrimitive.ScrollAreaProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
5
+ export { ScrollArea, ScrollBar };
@@ -0,0 +1,11 @@
1
+ import * as SelectPrimitive from '@radix-ui/react-select';
2
+ import * as React from 'react';
3
+ declare function Select({ ...props }: React.ComponentProps<typeof SelectPrimitive.Root>): import("react/jsx-runtime").JSX.Element;
4
+ declare function SelectGroup({ ...props }: React.ComponentProps<typeof SelectPrimitive.Group>): import("react/jsx-runtime").JSX.Element;
5
+ declare function SelectValue({ ...props }: React.ComponentProps<typeof SelectPrimitive.Value>): import("react/jsx-runtime").JSX.Element;
6
+ declare const SelectTrigger: React.ForwardRefExoticComponent<Omit<SelectPrimitive.SelectTriggerProps & React.RefAttributes<HTMLButtonElement>, "ref"> & React.RefAttributes<HTMLButtonElement>>;
7
+ declare const SelectContent: React.ForwardRefExoticComponent<Omit<SelectPrimitive.SelectContentProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
8
+ declare const SelectLabel: React.ForwardRefExoticComponent<Omit<SelectPrimitive.SelectLabelProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
9
+ declare const SelectItem: React.ForwardRefExoticComponent<Omit<SelectPrimitive.SelectItemProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
10
+ declare const SelectSeparator: React.ForwardRefExoticComponent<Omit<SelectPrimitive.SelectSeparatorProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
11
+ export { Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectSeparator, SelectTrigger, SelectValue };
@@ -0,0 +1,4 @@
1
+ import * as SeparatorPrimitive from '@radix-ui/react-separator';
2
+ import type * as React from 'react';
3
+ declare function Separator({ className, orientation, decorative, ...props }: React.ComponentProps<typeof SeparatorPrimitive.Root>): import("react/jsx-runtime").JSX.Element;
4
+ export { Separator };
@@ -0,0 +1,2 @@
1
+ import * as SliderPrimitive from '@radix-ui/react-slider';
2
+ export declare const Slider: import("react").ForwardRefExoticComponent<Omit<SliderPrimitive.SliderProps & import("react").RefAttributes<HTMLSpanElement>, "ref"> & import("react").RefAttributes<HTMLSpanElement>>;
@@ -0,0 +1,2 @@
1
+ import * as SwitchPrimitive from '@radix-ui/react-switch';
2
+ export declare const Switch: import("react").ForwardRefExoticComponent<Omit<SwitchPrimitive.SwitchProps & import("react").RefAttributes<HTMLButtonElement>, "ref"> & import("react").RefAttributes<HTMLButtonElement>>;
@@ -0,0 +1,7 @@
1
+ import * as TabsPrimitive from '@radix-ui/react-tabs';
2
+ import * as React from 'react';
3
+ declare function Tabs({ className, ...props }: React.ComponentProps<typeof TabsPrimitive.Root>): import("react/jsx-runtime").JSX.Element;
4
+ declare const TabsList: React.ForwardRefExoticComponent<Omit<TabsPrimitive.TabsListProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
5
+ declare const TabsTrigger: React.ForwardRefExoticComponent<Omit<TabsPrimitive.TabsTriggerProps & React.RefAttributes<HTMLButtonElement>, "ref"> & React.RefAttributes<HTMLButtonElement>>;
6
+ declare const TabsContent: React.ForwardRefExoticComponent<Omit<TabsPrimitive.TabsContentProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
7
+ export { Tabs, TabsContent, TabsList, TabsTrigger };
@@ -0,0 +1,7 @@
1
+ import * as TooltipPrimitive from '@radix-ui/react-tooltip';
2
+ import type * as React from 'react';
3
+ declare function TooltipProvider({ delayDuration, ...props }: React.ComponentProps<typeof TooltipPrimitive.Provider>): import("react/jsx-runtime").JSX.Element;
4
+ declare function Tooltip({ ...props }: React.ComponentProps<typeof TooltipPrimitive.Root>): import("react/jsx-runtime").JSX.Element;
5
+ declare function TooltipTrigger({ ...props }: React.ComponentProps<typeof TooltipPrimitive.Trigger>): import("react/jsx-runtime").JSX.Element;
6
+ declare function TooltipContent({ className, sideOffset, children, ...props }: React.ComponentProps<typeof TooltipPrimitive.Content>): import("react/jsx-runtime").JSX.Element;
7
+ export { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger };
@@ -0,0 +1 @@
1
+ export declare const useChartsPortalContainer: (slot: string) => HTMLElement;
@@ -53,9 +53,9 @@ declare const setConfig: (c?: Partial<Config>) => void;
53
53
  * 获取配置
54
54
  *
55
55
  * @param {keyof Config} [name]
56
- * @returns {Config | any}
57
56
  */
58
- declare const getConfig: (name?: keyof Config) => Config | any;
57
+ declare function getConfig(): Config;
58
+ declare function getConfig<K extends keyof Config>(name: K): Config[K];
59
59
  /**
60
60
  * 获取series的配置
61
61
  *
@@ -69,4 +69,4 @@ declare const getSeriesConfig: () => Config["line"];
69
69
  * @returns {string[]}
70
70
  */
71
71
  declare const getGradient: (i?: number) => string[];
72
- export { defaultConfig, setConfig, getConfig, getSeriesConfig, getGradient };
72
+ export { defaultConfig, getConfig, getGradient, getSeriesConfig, setConfig };
package/hooks/index.d.ts CHANGED
@@ -2,10 +2,10 @@
2
2
  * Hooks 统一导出
3
3
  */
4
4
  export { useChannel, usePoints, useSegments } from './data';
5
- export { PUB_SUB, useMarkerPublish, usePublish, useSafePublish } from './publish';
5
+ export { type EnhancedPublish, PUB_SUB, useMarkerPublish, usePublish, useSafePublish } from './publish';
6
6
  export { SET_SEGMENTS_DISPLAY, type UseSpectrumChartTypeProps, useSpectrumChartType, useSpectrumRule } from './spectrum';
7
7
  export { default as useChart } from './useChart';
8
- export { type EnhancedPublish, withChartPublisher } from './useChartComponent';
8
+ export { withChartPublisher } from './useChartComponent';
9
9
  export { default as useLevelStreamAnalyzer } from './useLevelStreamAnalyzer';
10
10
  export { useModuleSubscription } from './useModuleSubscription';
11
11
  export { useFilteredSeries, useSeriesForComponent, useSeriesManager } from './useSeriesManager';
@@ -0,0 +1,17 @@
1
+ import type { Publish, PublishData } from '../../types';
2
+ import type { rawData } from '../../utils/subscription';
3
+ type ReadyCleanup = () => void;
4
+ type ReadyCallback = () => ReadyCleanup | undefined;
5
+ export interface EnhancedPublish extends Publish {
6
+ isReady: () => boolean;
7
+ onReady: (callback: ReadyCallback) => ReadyCleanup | undefined;
8
+ getSourceData: () => rawData;
9
+ }
10
+ export interface EnhancedPublishController {
11
+ attachPublish: (publish: Publish) => void;
12
+ dispose: () => void;
13
+ enhancedPublish: EnhancedPublish;
14
+ publish: (data: PublishData) => void;
15
+ }
16
+ export declare function createEnhancedPublishController(): EnhancedPublishController;
17
+ export {};
@@ -1,6 +1,7 @@
1
1
  /**
2
2
  * 发布相关 hooks
3
3
  */
4
+ export type { EnhancedPublish } from './enhancedPublish';
4
5
  export { default as useMarkerPublish } from './useMarkerPublish';
5
6
  export { default as usePublish, PUB_SUB } from './usePublish';
6
7
  export { default as useSafePublish } from './useSafePublish';
@@ -1,13 +1,7 @@
1
- import type { Publish, PublishData } from '../../index';
2
- import type { rawData } from '../../utils/subscription';
3
- interface EnhancedPublish extends Publish {
4
- isReady: () => boolean;
5
- onReady: (callback: () => void | (() => void)) => undefined | (() => void);
6
- getSourceData: () => rawData;
7
- }
1
+ import type { PublishData } from '../../types';
2
+ import { type EnhancedPublish } from './enhancedPublish';
8
3
  export interface UseSafePublishReturn {
9
4
  publish: (data: PublishData) => void;
10
5
  chartRef: React.RefObject<EnhancedPublish>;
11
6
  }
12
7
  export default function useSafePublish(): UseSafePublishReturn;
13
- export {};
@@ -1,11 +1,5 @@
1
1
  import React, { type ComponentType } from 'react';
2
2
  import type { Publish } from '../types';
3
- import type { rawData } from '../utils/subscription';
4
- export interface EnhancedPublish extends Publish {
5
- isReady: () => boolean;
6
- onReady: (callback: () => void | (() => void)) => (() => void) | undefined;
7
- getSourceData: () => rawData;
8
- }
9
3
  /**
10
4
  * 创建图表组件的高阶函数,提供安全的publish功能
11
5
  * @param ChartComponent 要包装的图表组件
@@ -13,6 +13,8 @@ export interface UseDragSelectConfig {
13
13
  enabled?: boolean;
14
14
  defaultRect?: Partial<RectPosition>;
15
15
  minSize?: number;
16
+ minWidth?: number;
17
+ minHeight?: number;
16
18
  maxSize?: number;
17
19
  snapThreshold?: number;
18
20
  onChange?: (rect: RectPosition) => void;
package/index.d.ts CHANGED
@@ -1,7 +1,11 @@
1
+ import './theme/library.css';
1
2
  export { setFrequencyAllocationToCache } from './components/FrequencyAllocation/tools';
2
3
  export { ChartType, FrequencyUnit, MarkerEventType, ModuleType, OptionKey, PSType, SegmentsEvent, SeriesType, ToolsBarItemType, ToolType } from './config';
3
4
  export { type EnhancedPublish, useSafePublish, withChartPublisher } from './hooks';
4
5
  export { Dial, Gauge, Heatmap, IQ, LevelStream, Occupancy, Spectrum } from './lib';
6
+ export { applyChartsTheme, applyChartsThemePreference, type ChartsThemePreference, type ChartsThemeState, getChartsThemePreference, getChartsThemeState, subscribeChartsThemeChange } from './theme/charts-theme-controller';
7
+ export { type ChartsThemeChange, type InitChartsThemeOptions, type InitChartsThemeResult, initChartsTheme } from './theme/init-charts-theme';
8
+ export { RFKIT_CHARTS_SHADCN_THEME_CONFIGS } from './theme/shadcn-theme-config';
5
9
  export type { AxisXProps, AxisYRange, ChartRef, FrequencyAllocationItem, MarkerProps, MarkerType, Publish, PublishData, PublishDial, PublishGauge, PublishHeatmap, PublishIQ, PublishLevelStream, PublishOccupancy, PublishSpectrum, RecursiveFunction, // 递归方法 后期会删除
6
10
  RecursiveObject, // 递归对象 后期会删除
7
11
  Render, Reset, SegmentsOriginal, SeriesConfig, SetAntennaFactor, SetChannels, SetMarker, SetSegments, SetSeries, SetSpectrumBandwidth, SpectrumBandwidth, SpectrumExtraData, StationInfoType } from './types';