@mks2508/mks-ui 0.5.7 → 0.6.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.
- package/dist/react-ui/index.js +2 -2
- package/dist/react-ui/primitives/waapi/Gooey/Gooey.types.d.ts +2 -0
- package/dist/react-ui/primitives/waapi/Gooey/Gooey.types.d.ts.map +1 -1
- package/dist/react-ui/primitives/waapi/Gooey/GooeyCanvas.d.ts +1 -1
- package/dist/react-ui/primitives/waapi/Gooey/GooeyCanvas.d.ts.map +1 -1
- package/dist/react-ui/primitives/waapi/Gooey/GooeyCanvas.js +173 -43
- package/dist/react-ui/ui/Dialog/Dialog.styles.d.ts.map +1 -1
- package/dist/react-ui/ui/Dialog/Dialog.styles.js +1 -0
- package/dist/react-ui/ui/Dialog/Dialog.types.d.ts +20 -1
- package/dist/react-ui/ui/Dialog/Dialog.types.d.ts.map +1 -1
- package/dist/react-ui/ui/Dialog/index.d.ts +28 -7
- package/dist/react-ui/ui/Dialog/index.d.ts.map +1 -1
- package/dist/react-ui/ui/Dialog/index.js +32 -5
- package/dist/react-ui/ui/DynamicToggle/{DynamicToggle-DOR3Ld-k.css → DynamicToggle-DJLwEkHr.css} +12 -19
- package/dist/react-ui/ui/DynamicToggle/DynamicToggle.css +12 -20
- package/dist/react-ui/ui/DynamicToggle/DynamicToggle.styles.d.ts +1 -0
- package/dist/react-ui/ui/DynamicToggle/DynamicToggle.styles.d.ts.map +1 -1
- package/dist/react-ui/ui/DynamicToggle/DynamicToggle.styles.js +7 -1
- package/dist/react-ui/ui/DynamicToggle/DynamicToggle.types.d.ts +55 -31
- package/dist/react-ui/ui/DynamicToggle/DynamicToggle.types.d.ts.map +1 -1
- package/dist/react-ui/ui/DynamicToggle/index.d.ts +9 -3
- package/dist/react-ui/ui/DynamicToggle/index.d.ts.map +1 -1
- package/dist/react-ui/ui/DynamicToggle/index.js +47 -34
- package/dist/react-ui/ui/index.js +1 -1
- package/package.json +52 -13
- package/src/assets/react.svg +0 -1
- package/src/core/index.ts +0 -7
- package/src/core/types.ts +0 -82
- package/src/css.d.ts +0 -7
- package/src/index.css +0 -129
- package/src/index.ts +0 -29
- package/src/react-ui/blocks/Terminal/ResttyAdapter.ts +0 -278
- package/src/react-ui/blocks/Terminal/Terminal.adapter.ts +0 -97
- package/src/react-ui/blocks/Terminal/Terminal.theme.restty.ts +0 -155
- package/src/react-ui/blocks/Terminal/Terminal.theme.ts +0 -80
- package/src/react-ui/blocks/Terminal/Terminal.types.ts +0 -438
- package/src/react-ui/blocks/Terminal/TerminalDisplay.styles.ts +0 -38
- package/src/react-ui/blocks/Terminal/TerminalDisplay.tsx +0 -254
- package/src/react-ui/blocks/Terminal/TerminalDisplay.types.ts +0 -73
- package/src/react-ui/blocks/Terminal/TerminalPanel.tsx +0 -269
- package/src/react-ui/blocks/Terminal/TerminalRestty.tsx +0 -326
- package/src/react-ui/blocks/Terminal/TerminalXterm.tsx +0 -230
- package/src/react-ui/blocks/Terminal/XTermAdapter.ts +0 -163
- package/src/react-ui/blocks/Terminal/chrome.ts +0 -25
- package/src/react-ui/blocks/Terminal/components/LogLineBadges.tsx +0 -316
- package/src/react-ui/blocks/Terminal/components/SpecializedSyntaxHighlighter.tsx +0 -218
- package/src/react-ui/blocks/Terminal/components/SyntaxHighlight.tsx +0 -386
- package/src/react-ui/blocks/Terminal/components/TerminalLogBadge.tsx +0 -67
- package/src/react-ui/blocks/Terminal/components/index.ts +0 -10
- package/src/react-ui/blocks/Terminal/display.ts +0 -46
- package/src/react-ui/blocks/Terminal/hooks/index.ts +0 -22
- package/src/react-ui/blocks/Terminal/hooks/useTerminalSettings.ts +0 -229
- package/src/react-ui/blocks/Terminal/hooks/useTerminalWebSocket.ts +0 -292
- package/src/react-ui/blocks/Terminal/index.ts +0 -111
- package/src/react-ui/blocks/Terminal/panel/LogLinesViewer.tsx +0 -330
- package/src/react-ui/blocks/Terminal/panel/TerminalDebugPanel.tsx +0 -242
- package/src/react-ui/blocks/Terminal/panel/TerminalFilterDropdown.tsx +0 -202
- package/src/react-ui/blocks/Terminal/panel/TerminalFilterTabs.tsx +0 -140
- package/src/react-ui/blocks/Terminal/panel/TerminalInteractivePanel.tsx +0 -68
- package/src/react-ui/blocks/Terminal/panel/TerminalInteractivePanel.types.ts +0 -85
- package/src/react-ui/blocks/Terminal/panel/TerminalInteractivePanelRestty.tsx +0 -383
- package/src/react-ui/blocks/Terminal/panel/TerminalInteractivePanelXterm.tsx +0 -439
- package/src/react-ui/blocks/Terminal/panel/TerminalLogsPanel.tsx +0 -550
- package/src/react-ui/blocks/Terminal/panel/TerminalLogsPanel.types.ts +0 -259
- package/src/react-ui/blocks/Terminal/panel/TerminalPanelChrome.styles.ts +0 -75
- package/src/react-ui/blocks/Terminal/panel/TerminalPanelChrome.tsx +0 -266
- package/src/react-ui/blocks/Terminal/panel/TerminalPanelChrome.types.ts +0 -82
- package/src/react-ui/blocks/Terminal/panel/TerminalPanelFooter.tsx +0 -112
- package/src/react-ui/blocks/Terminal/panel/TerminalPanelHeader.tsx +0 -178
- package/src/react-ui/blocks/Terminal/panel/TerminalPanelToolbar.tsx +0 -203
- package/src/react-ui/blocks/Terminal/panel/TerminalSessionControl.tsx +0 -252
- package/src/react-ui/blocks/Terminal/panel/TerminalSessionTabs.tsx +0 -334
- package/src/react-ui/blocks/Terminal/panel/TerminalSettingsPopover.tsx +0 -261
- package/src/react-ui/blocks/Terminal/panel/TerminalThemeSelector.tsx +0 -248
- package/src/react-ui/blocks/Terminal/panel/index.ts +0 -72
- package/src/react-ui/blocks/Terminal/panel/terminal-filter-dropdown.module.css +0 -59
- package/src/react-ui/blocks/Terminal/panel/terminal-session-tabs.module.css +0 -59
- package/src/react-ui/blocks/Terminal/parsing/BadgeFormatter.ts +0 -180
- package/src/react-ui/blocks/Terminal/parsing/HttpLogParser.ts +0 -248
- package/src/react-ui/blocks/Terminal/parsing/LogParser.types.ts +0 -283
- package/src/react-ui/blocks/Terminal/parsing/LogParserService.ts +0 -686
- package/src/react-ui/blocks/Terminal/parsing/MultilineAggregator.ts +0 -466
- package/src/react-ui/blocks/Terminal/parsing/PersistentLogBuffer.ts +0 -343
- package/src/react-ui/blocks/Terminal/parsing/SyntaxHighlighter.ts +0 -167
- package/src/react-ui/blocks/Terminal/parsing/TableParser.ts +0 -348
- package/src/react-ui/blocks/Terminal/parsing/ansi/AnsiColorMapper.ts +0 -251
- package/src/react-ui/blocks/Terminal/parsing/ansi/AnsiParser.ts +0 -390
- package/src/react-ui/blocks/Terminal/parsing/ansi/ansi.constants.ts +0 -320
- package/src/react-ui/blocks/Terminal/parsing/ansi/index.ts +0 -20
- package/src/react-ui/blocks/Terminal/parsing/index.ts +0 -69
- package/src/react-ui/blocks/Terminal/parsing/levels/LogLevel.types.ts +0 -68
- package/src/react-ui/blocks/Terminal/parsing/levels/LogLevelDetector.ts +0 -436
- package/src/react-ui/blocks/Terminal/parsing/levels/index.ts +0 -14
- package/src/react-ui/blocks/index.ts +0 -11
- package/src/react-ui/components/MorphingPopover/MorphingPopover.types.ts +0 -49
- package/src/react-ui/components/MorphingPopover/index.tsx +0 -186
- package/src/react-ui/components/MorphingPopover/morphing-popover.module.css +0 -153
- package/src/react-ui/components/index.ts +0 -9
- package/src/react-ui/hooks/Animation/UseAutoHeight.tsx +0 -123
- package/src/react-ui/hooks/DOM/UseIsInView.tsx +0 -44
- package/src/react-ui/hooks/Formatting/UseListFormat.ts +0 -134
- package/src/react-ui/hooks/State/UseControlledState.tsx +0 -57
- package/src/react-ui/hooks/State/UseDataState.tsx +0 -76
- package/src/react-ui/hooks/index.ts +0 -20
- package/src/react-ui/icons/index.ts +0 -12
- package/src/react-ui/icons/lucide-animated/activity.tsx +0 -109
- package/src/react-ui/icons/lucide-animated/arrow-down-to-line.tsx +0 -51
- package/src/react-ui/icons/lucide-animated/arrow-up.tsx +0 -50
- package/src/react-ui/icons/lucide-animated/bell-electric.tsx +0 -124
- package/src/react-ui/icons/lucide-animated/bell.tsx +0 -93
- package/src/react-ui/icons/lucide-animated/bot.tsx +0 -122
- package/src/react-ui/icons/lucide-animated/box.tsx +0 -117
- package/src/react-ui/icons/lucide-animated/check.tsx +0 -21
- package/src/react-ui/icons/lucide-animated/circle-check.tsx +0 -107
- package/src/react-ui/icons/lucide-animated/delete.tsx +0 -133
- package/src/react-ui/icons/lucide-animated/download.tsx +0 -99
- package/src/react-ui/icons/lucide-animated/edit-2.tsx +0 -21
- package/src/react-ui/icons/lucide-animated/globe.tsx +0 -23
- package/src/react-ui/icons/lucide-animated/home.tsx +0 -103
- package/src/react-ui/icons/lucide-animated/index.ts +0 -38
- package/src/react-ui/icons/lucide-animated/layers.tsx +0 -23
- package/src/react-ui/icons/lucide-animated/layout-panel-top.tsx +0 -143
- package/src/react-ui/icons/lucide-animated/list.tsx +0 -54
- package/src/react-ui/icons/lucide-animated/package.tsx +0 -24
- package/src/react-ui/icons/lucide-animated/palette.tsx +0 -25
- package/src/react-ui/icons/lucide-animated/plus.tsx +0 -92
- package/src/react-ui/icons/lucide-animated/refresh-cw.tsx +0 -24
- package/src/react-ui/icons/lucide-animated/rocket.tsx +0 -24
- package/src/react-ui/icons/lucide-animated/save.tsx +0 -23
- package/src/react-ui/icons/lucide-animated/search.tsx +0 -94
- package/src/react-ui/icons/lucide-animated/settings.tsx +0 -92
- package/src/react-ui/icons/lucide-animated/terminal.tsx +0 -46
- package/src/react-ui/icons/lucide-animated/trash-2.tsx +0 -25
- package/src/react-ui/icons/lucide-animated/trending-down.tsx +0 -151
- package/src/react-ui/icons/lucide-animated/trending-up.tsx +0 -150
- package/src/react-ui/icons/lucide-animated/type.tsx +0 -23
- package/src/react-ui/icons/lucide-animated/upload.tsx +0 -23
- package/src/react-ui/icons/lucide-animated/x.tsx +0 -102
- package/src/react-ui/index.ts +0 -30
- package/src/react-ui/lib/get-strict-context.tsx +0 -56
- package/src/react-ui/lib/icon-wrapper.tsx +0 -70
- package/src/react-ui/lib/index.ts +0 -9
- package/src/react-ui/lib/utils.ts +0 -24
- package/src/react-ui/primitives/AutoHeight/index.tsx +0 -74
- package/src/react-ui/primitives/CountingNumber/index.tsx +0 -147
- package/src/react-ui/primitives/Highlight/Highlight.types.ts +0 -136
- package/src/react-ui/primitives/Highlight/index.tsx +0 -577
- package/src/react-ui/primitives/Slot/index.tsx +0 -128
- package/src/react-ui/primitives/index.ts +0 -16
- package/src/react-ui/primitives/waapi/Gooey/Gooey.types.ts +0 -141
- package/src/react-ui/primitives/waapi/Gooey/GooeyCanvas.tsx +0 -217
- package/src/react-ui/primitives/waapi/Gooey/GooeyFilter.tsx +0 -77
- package/src/react-ui/primitives/waapi/Gooey/MorphPath.tsx +0 -58
- package/src/react-ui/primitives/waapi/Gooey/gooey-utils.ts +0 -253
- package/src/react-ui/primitives/waapi/Gooey/index.ts +0 -50
- package/src/react-ui/primitives/waapi/Gooey/useMorphPath.ts +0 -48
- package/src/react-ui/primitives/waapi/Morph/Morph.types.ts +0 -106
- package/src/react-ui/primitives/waapi/Morph/MorphContext.tsx +0 -21
- package/src/react-ui/primitives/waapi/Morph/index.tsx +0 -56
- package/src/react-ui/primitives/waapi/Morph/techniques/index.ts +0 -12
- package/src/react-ui/primitives/waapi/Morph/techniques/useCSSGridMorph.ts +0 -89
- package/src/react-ui/primitives/waapi/Morph/techniques/useFLIPClipPath.ts +0 -176
- package/src/react-ui/primitives/waapi/Morph/techniques/useViewTransitions.ts +0 -87
- package/src/react-ui/primitives/waapi/Morph/useMorph.ts +0 -101
- package/src/react-ui/primitives/waapi/Reorder/Reorder.types.ts +0 -177
- package/src/react-ui/primitives/waapi/Reorder/index.tsx +0 -260
- package/src/react-ui/primitives/waapi/Reorder/useReorder.ts +0 -47
- package/src/react-ui/primitives/waapi/Reorder/useReorderPresence.ts +0 -209
- package/src/react-ui/primitives/waapi/Reorder/utils/separatorCoordination.ts +0 -104
- package/src/react-ui/primitives/waapi/SlidingNumber/SlidingNumber.styles.ts +0 -14
- package/src/react-ui/primitives/waapi/SlidingNumber/SlidingNumber.types.ts +0 -84
- package/src/react-ui/primitives/waapi/SlidingNumber/index.tsx +0 -474
- package/src/react-ui/primitives/waapi/SlidingText/SlidingText.styles.ts +0 -32
- package/src/react-ui/primitives/waapi/SlidingText/SlidingText.types.ts +0 -69
- package/src/react-ui/primitives/waapi/SlidingText/index.tsx +0 -140
- package/src/react-ui/primitives/waapi/core/animationConstants.ts +0 -215
- package/src/react-ui/primitives/waapi/core/index.ts +0 -53
- package/src/react-ui/primitives/waapi/core/types.ts +0 -200
- package/src/react-ui/primitives/waapi/core/useAnimationOrchestrator.ts +0 -430
- package/src/react-ui/primitives/waapi/core/useElementRegistry.ts +0 -81
- package/src/react-ui/primitives/waapi/core/useFLIPAnimation.ts +0 -138
- package/src/react-ui/primitives/waapi/core/usePositionCapture.ts +0 -106
- package/src/react-ui/primitives/waapi/index.ts +0 -139
- package/src/react-ui/styles/animations.css +0 -369
- package/src/react-ui/ui/Accordion/Accordion.styles.ts +0 -72
- package/src/react-ui/ui/Accordion/Accordion.types.ts +0 -199
- package/src/react-ui/ui/Accordion/index.tsx +0 -362
- package/src/react-ui/ui/AlertDialog/AlertDialog.styles.ts +0 -38
- package/src/react-ui/ui/AlertDialog/AlertDialog.types.ts +0 -296
- package/src/react-ui/ui/AlertDialog/index.tsx +0 -540
- package/src/react-ui/ui/Badge/Badge.styles.ts +0 -43
- package/src/react-ui/ui/Badge/Badge.types.ts +0 -26
- package/src/react-ui/ui/Badge/index.tsx +0 -34
- package/src/react-ui/ui/Button/Button.styles.ts +0 -57
- package/src/react-ui/ui/Button/Button.types.ts +0 -63
- package/src/react-ui/ui/Button/index.tsx +0 -155
- package/src/react-ui/ui/Card/Card.styles.ts +0 -32
- package/src/react-ui/ui/Card/Card.types.ts +0 -39
- package/src/react-ui/ui/Card/index.tsx +0 -130
- package/src/react-ui/ui/Checkbox/Checkbox.styles.ts +0 -40
- package/src/react-ui/ui/Checkbox/Checkbox.types.ts +0 -98
- package/src/react-ui/ui/Checkbox/index.tsx +0 -233
- package/src/react-ui/ui/Combobox/Combobox.styles.ts +0 -34
- package/src/react-ui/ui/Combobox/Combobox.types.ts +0 -89
- package/src/react-ui/ui/Combobox/index.tsx +0 -331
- package/src/react-ui/ui/CornerBracket/CornerBracket.styles.ts +0 -38
- package/src/react-ui/ui/CornerBracket/CornerBracket.types.ts +0 -15
- package/src/react-ui/ui/CornerBracket/index.tsx +0 -49
- package/src/react-ui/ui/DataCard/DataCard.styles.ts +0 -94
- package/src/react-ui/ui/DataCard/DataCard.types.ts +0 -125
- package/src/react-ui/ui/DataCard/index.tsx +0 -340
- package/src/react-ui/ui/Dialog/Dialog.styles.ts +0 -59
- package/src/react-ui/ui/Dialog/Dialog.types.ts +0 -284
- package/src/react-ui/ui/Dialog/index.tsx +0 -452
- package/src/react-ui/ui/DropdownMenu/DropdownMenu.styles.ts +0 -35
- package/src/react-ui/ui/DropdownMenu/DropdownMenu.types.ts +0 -81
- package/src/react-ui/ui/DropdownMenu/index.tsx +0 -300
- package/src/react-ui/ui/DynamicToggle/DynamicToggle.css +0 -376
- package/src/react-ui/ui/DynamicToggle/DynamicToggle.styles.ts +0 -85
- package/src/react-ui/ui/DynamicToggle/DynamicToggle.types.ts +0 -180
- package/src/react-ui/ui/DynamicToggle/index.tsx +0 -316
- package/src/react-ui/ui/DynamicToggle/prototype-v7-ios.html +0 -413
- package/src/react-ui/ui/DynamicToggle/prototype-v7.html +0 -615
- package/src/react-ui/ui/DynamicToggle/prototype-v8-gooey-safari.html +0 -560
- package/src/react-ui/ui/DynamicToggle/prototype-v8b-react-structure.html +0 -227
- package/src/react-ui/ui/DynamicToggle/prototype.html +0 -419
- package/src/react-ui/ui/Field/Field.styles.ts +0 -47
- package/src/react-ui/ui/Field/Field.types.ts +0 -60
- package/src/react-ui/ui/Field/index.tsx +0 -254
- package/src/react-ui/ui/Input/Input.styles.ts +0 -11
- package/src/react-ui/ui/Input/Input.types.ts +0 -10
- package/src/react-ui/ui/Input/index.tsx +0 -32
- package/src/react-ui/ui/InputGroup/InputGroup.styles.ts +0 -53
- package/src/react-ui/ui/InputGroup/InputGroup.types.ts +0 -44
- package/src/react-ui/ui/InputGroup/index.tsx +0 -149
- package/src/react-ui/ui/Label/Label.styles.ts +0 -10
- package/src/react-ui/ui/Label/Label.types.ts +0 -9
- package/src/react-ui/ui/Label/index.tsx +0 -27
- package/src/react-ui/ui/Menu/Menu.styles.ts +0 -71
- package/src/react-ui/ui/Menu/Menu.types.ts +0 -425
- package/src/react-ui/ui/Menu/index.tsx +0 -900
- package/src/react-ui/ui/Popover/Popover.styles.ts +0 -55
- package/src/react-ui/ui/Popover/Popover.types.ts +0 -261
- package/src/react-ui/ui/Popover/index.tsx +0 -422
- package/src/react-ui/ui/Progress/Progress.styles.ts +0 -36
- package/src/react-ui/ui/Progress/Progress.types.ts +0 -162
- package/src/react-ui/ui/Progress/index.tsx +0 -254
- package/src/react-ui/ui/Select/Select.styles.ts +0 -30
- package/src/react-ui/ui/Select/Select.types.ts +0 -51
- package/src/react-ui/ui/Select/index.tsx +0 -225
- package/src/react-ui/ui/Separator/Separator.styles.ts +0 -10
- package/src/react-ui/ui/Separator/Separator.types.ts +0 -10
- package/src/react-ui/ui/Separator/index.tsx +0 -37
- package/src/react-ui/ui/Switch/Switch.styles.ts +0 -50
- package/src/react-ui/ui/Switch/Switch.types.ts +0 -155
- package/src/react-ui/ui/Switch/index.tsx +0 -253
- package/src/react-ui/ui/Tabs/Tabs.css +0 -39
- package/src/react-ui/ui/Tabs/Tabs.styles.ts +0 -148
- package/src/react-ui/ui/Tabs/Tabs.types.ts +0 -255
- package/src/react-ui/ui/Tabs/index.tsx +0 -529
- package/src/react-ui/ui/TextFlow/TextFlow.styles.ts +0 -36
- package/src/react-ui/ui/TextFlow/TextFlow.types.ts +0 -118
- package/src/react-ui/ui/TextFlow/index.tsx +0 -276
- package/src/react-ui/ui/Textarea/Textarea.styles.ts +0 -10
- package/src/react-ui/ui/Textarea/Textarea.types.ts +0 -9
- package/src/react-ui/ui/Textarea/index.tsx +0 -27
- package/src/react-ui/ui/Tooltip/Tooltip.styles.ts +0 -43
- package/src/react-ui/ui/Tooltip/Tooltip.types.ts +0 -253
- package/src/react-ui/ui/Tooltip/index.tsx +0 -394
- package/src/react-ui/ui/index.ts +0 -41
- package/src/types/css-modules.d.ts +0 -18
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Style definitions for the Popover component.
|
|
3
|
-
*
|
|
4
|
-
* Provides StyleSlots for each visual region. Uses only CSS variable
|
|
5
|
-
* utilities; never hard-coded color values.
|
|
6
|
-
*
|
|
7
|
-
* @module @mks2508/mks-ui/react/ui/Popover/Popover.styles
|
|
8
|
-
*/
|
|
9
|
-
|
|
10
|
-
import type { StyleSlots } from '@/core/types';
|
|
11
|
-
import type { PopoverSlot } from './Popover.types';
|
|
12
|
-
|
|
13
|
-
/**
|
|
14
|
-
* Default Tailwind classes for each Popover visual region.
|
|
15
|
-
* Consumers override via the `slots` prop; the merge order is:
|
|
16
|
-
* `base -> slots -> className`.
|
|
17
|
-
*
|
|
18
|
-
* @example
|
|
19
|
-
* ```typescript
|
|
20
|
-
* import { popoverStyles } from './Popover.styles';
|
|
21
|
-
* // popoverStyles.popup => 'z-50 w-72 rounded-md border ...'
|
|
22
|
-
* ```
|
|
23
|
-
*/
|
|
24
|
-
export const popoverStyles: StyleSlots<PopoverSlot> = {
|
|
25
|
-
/** Root wrapper — no visual styling by default. */
|
|
26
|
-
root: '',
|
|
27
|
-
|
|
28
|
-
/** Popup content container. */
|
|
29
|
-
popup: [
|
|
30
|
-
'z-50 w-72 rounded-md border border-border',
|
|
31
|
-
'bg-popover p-4 text-popover-foreground shadow-md outline-none',
|
|
32
|
-
].join(' '),
|
|
33
|
-
|
|
34
|
-
/** Trigger element — no default styling. */
|
|
35
|
-
trigger: '',
|
|
36
|
-
|
|
37
|
-
/** Positioner wrapper — handles absolute placement. */
|
|
38
|
-
positioner: '',
|
|
39
|
-
|
|
40
|
-
/** Optional backdrop overlay. */
|
|
41
|
-
backdrop: 'fixed inset-0',
|
|
42
|
-
|
|
43
|
-
/** Directional arrow pointing toward the trigger. */
|
|
44
|
-
arrow: 'fill-popover',
|
|
45
|
-
|
|
46
|
-
/** Popover title text. */
|
|
47
|
-
title: 'font-medium leading-none text-foreground',
|
|
48
|
-
|
|
49
|
-
/** Popover description text. */
|
|
50
|
-
description: 'text-sm text-muted-foreground',
|
|
51
|
-
|
|
52
|
-
/** Close button. */
|
|
53
|
-
close:
|
|
54
|
-
'rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2',
|
|
55
|
-
};
|
|
@@ -1,261 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Type definitions for the Popover component.
|
|
3
|
-
*
|
|
4
|
-
* Provides all prop interfaces, slot types, context types, and configuration
|
|
5
|
-
* for the animated popover system built on Base UI and Motion.
|
|
6
|
-
*
|
|
7
|
-
* @module @mks2508/mks-ui/react/ui/Popover/Popover.types
|
|
8
|
-
*/
|
|
9
|
-
|
|
10
|
-
import type * as React from 'react';
|
|
11
|
-
import type { Popover as PopoverPrimitive } from '@base-ui/react/popover';
|
|
12
|
-
import type { HTMLMotionProps } from 'motion/react';
|
|
13
|
-
|
|
14
|
-
import type { SlotOverrides, IBaseConfig } from '@/core/types';
|
|
15
|
-
|
|
16
|
-
/* -------------------------------------------------------------------------- */
|
|
17
|
-
/* Slot */
|
|
18
|
-
/* -------------------------------------------------------------------------- */
|
|
19
|
-
|
|
20
|
-
/**
|
|
21
|
-
* Visual regions available for class-name overrides via the `slots` prop.
|
|
22
|
-
*
|
|
23
|
-
* @example
|
|
24
|
-
* ```tsx
|
|
25
|
-
* <PopoverPopup slots={{ popup: 'rounded-xl shadow-xl', arrow: 'fill-popover' }} />
|
|
26
|
-
* ```
|
|
27
|
-
*/
|
|
28
|
-
export type PopoverSlot =
|
|
29
|
-
| 'root'
|
|
30
|
-
| 'popup'
|
|
31
|
-
| 'trigger'
|
|
32
|
-
| 'positioner'
|
|
33
|
-
| 'backdrop'
|
|
34
|
-
| 'arrow'
|
|
35
|
-
| 'title'
|
|
36
|
-
| 'description'
|
|
37
|
-
| 'close';
|
|
38
|
-
|
|
39
|
-
/* -------------------------------------------------------------------------- */
|
|
40
|
-
/* Config */
|
|
41
|
-
/* -------------------------------------------------------------------------- */
|
|
42
|
-
|
|
43
|
-
/**
|
|
44
|
-
* Extended configuration for the Popover component.
|
|
45
|
-
* Inherits base animation settings and adds popover-specific options.
|
|
46
|
-
*
|
|
47
|
-
* @example
|
|
48
|
-
* ```typescript
|
|
49
|
-
* const config: IPopoverConfig = {
|
|
50
|
-
* animation: { duration: 0.25, easing: 'ease-out' },
|
|
51
|
-
* };
|
|
52
|
-
* ```
|
|
53
|
-
*/
|
|
54
|
-
export interface IPopoverConfig extends IBaseConfig {
|
|
55
|
-
// Reserved for future popover-specific config.
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
/* -------------------------------------------------------------------------- */
|
|
59
|
-
/* Context */
|
|
60
|
-
/* -------------------------------------------------------------------------- */
|
|
61
|
-
|
|
62
|
-
/**
|
|
63
|
-
* Internal context type shared between Popover sub-components.
|
|
64
|
-
* Tracks open state so AnimatePresence can coordinate enter/exit animations.
|
|
65
|
-
*
|
|
66
|
-
* @example
|
|
67
|
-
* ```tsx
|
|
68
|
-
* const { isOpen, setIsOpen } = usePopover();
|
|
69
|
-
* ```
|
|
70
|
-
*/
|
|
71
|
-
export type PopoverContextType = {
|
|
72
|
-
/** Whether the popover is currently open. */
|
|
73
|
-
isOpen: boolean;
|
|
74
|
-
/** Callback to change the open state. */
|
|
75
|
-
setIsOpen: IPopoverProps['onOpenChange'];
|
|
76
|
-
};
|
|
77
|
-
|
|
78
|
-
/* -------------------------------------------------------------------------- */
|
|
79
|
-
/* Props interfaces */
|
|
80
|
-
/* -------------------------------------------------------------------------- */
|
|
81
|
-
|
|
82
|
-
/**
|
|
83
|
-
* Props for the root `Popover` component.
|
|
84
|
-
* Wraps Base UI Popover.Root with controlled-state support and context provider.
|
|
85
|
-
*
|
|
86
|
-
* @example
|
|
87
|
-
* ```tsx
|
|
88
|
-
* <Popover open={isOpen} onOpenChange={setIsOpen}>
|
|
89
|
-
* <PopoverTrigger>Toggle</PopoverTrigger>
|
|
90
|
-
* <PopoverPortal>
|
|
91
|
-
* <PopoverPositioner>
|
|
92
|
-
* <PopoverPopup>Content here</PopoverPopup>
|
|
93
|
-
* </PopoverPositioner>
|
|
94
|
-
* </PopoverPortal>
|
|
95
|
-
* </Popover>
|
|
96
|
-
* ```
|
|
97
|
-
*/
|
|
98
|
-
export interface IPopoverProps
|
|
99
|
-
extends React.ComponentProps<typeof PopoverPrimitive.Root> {
|
|
100
|
-
/** Style slot overrides for the root wrapper. */
|
|
101
|
-
slots?: SlotOverrides<PopoverSlot>;
|
|
102
|
-
/** Component configuration. */
|
|
103
|
-
config?: IPopoverConfig;
|
|
104
|
-
}
|
|
105
|
-
|
|
106
|
-
/**
|
|
107
|
-
* Props for the `PopoverTrigger` component.
|
|
108
|
-
* Renders the element that toggles the popover on interaction.
|
|
109
|
-
*
|
|
110
|
-
* @example
|
|
111
|
-
* ```tsx
|
|
112
|
-
* <PopoverTrigger>
|
|
113
|
-
* <Button>Show info</Button>
|
|
114
|
-
* </PopoverTrigger>
|
|
115
|
-
* ```
|
|
116
|
-
*/
|
|
117
|
-
export interface IPopoverTriggerProps
|
|
118
|
-
extends React.ComponentProps<typeof PopoverPrimitive.Trigger> {
|
|
119
|
-
/** Style slot overrides. */
|
|
120
|
-
slots?: SlotOverrides<PopoverSlot>;
|
|
121
|
-
}
|
|
122
|
-
|
|
123
|
-
/**
|
|
124
|
-
* Props for the `PopoverPortal` component.
|
|
125
|
-
* Renders children into a React portal with AnimatePresence for exit animations.
|
|
126
|
-
* The `keepMounted` prop is handled internally and cannot be overridden.
|
|
127
|
-
*
|
|
128
|
-
* @example
|
|
129
|
-
* ```tsx
|
|
130
|
-
* <PopoverPortal>
|
|
131
|
-
* <PopoverPositioner>
|
|
132
|
-
* <PopoverPopup>...</PopoverPopup>
|
|
133
|
-
* </PopoverPositioner>
|
|
134
|
-
* </PopoverPortal>
|
|
135
|
-
* ```
|
|
136
|
-
*/
|
|
137
|
-
export interface IPopoverPortalProps
|
|
138
|
-
extends Omit<
|
|
139
|
-
React.ComponentProps<typeof PopoverPrimitive.Portal>,
|
|
140
|
-
'keepMounted'
|
|
141
|
-
> {
|
|
142
|
-
/** Style slot overrides. */
|
|
143
|
-
slots?: SlotOverrides<PopoverSlot>;
|
|
144
|
-
}
|
|
145
|
-
|
|
146
|
-
/**
|
|
147
|
-
* Props for the `PopoverPositioner` component.
|
|
148
|
-
* Handles automatic positioning relative to the trigger.
|
|
149
|
-
*
|
|
150
|
-
* @example
|
|
151
|
-
* ```tsx
|
|
152
|
-
* <PopoverPositioner sideOffset={8}>
|
|
153
|
-
* <PopoverPopup>Content</PopoverPopup>
|
|
154
|
-
* </PopoverPositioner>
|
|
155
|
-
* ```
|
|
156
|
-
*/
|
|
157
|
-
export interface IPopoverPositionerProps
|
|
158
|
-
extends React.ComponentProps<typeof PopoverPrimitive.Positioner> {
|
|
159
|
-
/** Style slot overrides. */
|
|
160
|
-
slots?: SlotOverrides<PopoverSlot>;
|
|
161
|
-
}
|
|
162
|
-
|
|
163
|
-
/**
|
|
164
|
-
* Props for the `PopoverPopup` component.
|
|
165
|
-
* The main content container with scale entrance animation.
|
|
166
|
-
* Accepts all HTMLMotionProps for full animation control.
|
|
167
|
-
*
|
|
168
|
-
* @example
|
|
169
|
-
* ```tsx
|
|
170
|
-
* <PopoverPopup className="p-4 rounded-lg">
|
|
171
|
-
* <PopoverTitle>Info</PopoverTitle>
|
|
172
|
-
* <PopoverDescription>Details here.</PopoverDescription>
|
|
173
|
-
* </PopoverPopup>
|
|
174
|
-
* ```
|
|
175
|
-
*/
|
|
176
|
-
export interface IPopoverPopupProps
|
|
177
|
-
extends Omit<
|
|
178
|
-
Omit<React.ComponentProps<typeof PopoverPrimitive.Popup>, 'render'>,
|
|
179
|
-
keyof HTMLMotionProps<'div'>
|
|
180
|
-
>,
|
|
181
|
-
HTMLMotionProps<'div'> {
|
|
182
|
-
/** Style slot overrides. */
|
|
183
|
-
slots?: SlotOverrides<PopoverSlot>;
|
|
184
|
-
}
|
|
185
|
-
|
|
186
|
-
/**
|
|
187
|
-
* Props for the `PopoverBackdrop` component.
|
|
188
|
-
* Optional overlay rendered behind the popover.
|
|
189
|
-
*
|
|
190
|
-
* @example
|
|
191
|
-
* ```tsx
|
|
192
|
-
* <PopoverBackdrop className="bg-black/20" />
|
|
193
|
-
* ```
|
|
194
|
-
*/
|
|
195
|
-
export interface IPopoverBackdropProps
|
|
196
|
-
extends React.ComponentProps<typeof PopoverPrimitive.Backdrop> {
|
|
197
|
-
/** Style slot overrides. */
|
|
198
|
-
slots?: SlotOverrides<PopoverSlot>;
|
|
199
|
-
}
|
|
200
|
-
|
|
201
|
-
/**
|
|
202
|
-
* Props for the `PopoverArrow` component.
|
|
203
|
-
* Renders a directional arrow pointing toward the trigger.
|
|
204
|
-
*
|
|
205
|
-
* @example
|
|
206
|
-
* ```tsx
|
|
207
|
-
* <PopoverArrow className="fill-popover" />
|
|
208
|
-
* ```
|
|
209
|
-
*/
|
|
210
|
-
export interface IPopoverArrowProps
|
|
211
|
-
extends React.ComponentProps<typeof PopoverPrimitive.Arrow> {
|
|
212
|
-
/** Style slot overrides. */
|
|
213
|
-
slots?: SlotOverrides<PopoverSlot>;
|
|
214
|
-
}
|
|
215
|
-
|
|
216
|
-
/**
|
|
217
|
-
* Props for the `PopoverTitle` component.
|
|
218
|
-
* Renders the accessible title for the popover.
|
|
219
|
-
*
|
|
220
|
-
* @example
|
|
221
|
-
* ```tsx
|
|
222
|
-
* <PopoverTitle>Quick Info</PopoverTitle>
|
|
223
|
-
* ```
|
|
224
|
-
*/
|
|
225
|
-
export interface IPopoverTitleProps
|
|
226
|
-
extends React.ComponentProps<typeof PopoverPrimitive.Title> {
|
|
227
|
-
/** Style slot overrides. */
|
|
228
|
-
slots?: SlotOverrides<PopoverSlot>;
|
|
229
|
-
}
|
|
230
|
-
|
|
231
|
-
/**
|
|
232
|
-
* Props for the `PopoverDescription` component.
|
|
233
|
-
* Renders the accessible description for the popover.
|
|
234
|
-
*
|
|
235
|
-
* @example
|
|
236
|
-
* ```tsx
|
|
237
|
-
* <PopoverDescription>Additional details about this item.</PopoverDescription>
|
|
238
|
-
* ```
|
|
239
|
-
*/
|
|
240
|
-
export interface IPopoverDescriptionProps
|
|
241
|
-
extends React.ComponentProps<typeof PopoverPrimitive.Description> {
|
|
242
|
-
/** Style slot overrides. */
|
|
243
|
-
slots?: SlotOverrides<PopoverSlot>;
|
|
244
|
-
}
|
|
245
|
-
|
|
246
|
-
/**
|
|
247
|
-
* Props for the `PopoverClose` component.
|
|
248
|
-
* Renders a button that closes the popover when clicked.
|
|
249
|
-
*
|
|
250
|
-
* @example
|
|
251
|
-
* ```tsx
|
|
252
|
-
* <PopoverClose>
|
|
253
|
-
* <button aria-label="Close">X</button>
|
|
254
|
-
* </PopoverClose>
|
|
255
|
-
* ```
|
|
256
|
-
*/
|
|
257
|
-
export interface IPopoverCloseProps
|
|
258
|
-
extends React.ComponentProps<typeof PopoverPrimitive.Close> {
|
|
259
|
-
/** Style slot overrides. */
|
|
260
|
-
slots?: SlotOverrides<PopoverSlot>;
|
|
261
|
-
}
|