@revikornmann/muka-ui 0.16.0 → 0.18.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/cjs/components/ActionSheet/ActionSheet.js +1 -1
- package/dist/cjs/components/Breadcrumb/Breadcrumb.css +11 -3
- package/dist/cjs/components/Breadcrumb/Breadcrumb.js +19 -1
- package/dist/cjs/components/Breadcrumb/Breadcrumb.js.map +1 -1
- package/dist/cjs/components/ChatComposer/ChatComposer.js +12 -4
- package/dist/cjs/components/ChatComposer/ChatComposer.js.map +1 -1
- package/dist/cjs/components/ContextSelect/ContextSelect.css +117 -0
- package/dist/cjs/components/ContextSelect/ContextSelect.js +49 -0
- package/dist/cjs/components/ContextSelect/ContextSelect.js.map +1 -0
- package/dist/cjs/components/ContextSelect/index.js +11 -0
- package/dist/cjs/components/ContextSelect/index.js.map +1 -0
- package/dist/cjs/components/EmojiPicker/EmojiPicker.css +19 -0
- package/dist/cjs/components/EmojiPicker/EmojiPicker.js +54 -0
- package/dist/cjs/components/EmojiPicker/EmojiPicker.js.map +1 -0
- package/dist/cjs/components/EmojiPicker/index.js +12 -0
- package/dist/cjs/components/EmojiPicker/index.js.map +1 -0
- package/dist/cjs/components/Icon/custom/ArrowDropUpDownIcon.js +11 -0
- package/dist/cjs/components/Icon/custom/ArrowDropUpDownIcon.js.map +1 -0
- package/dist/cjs/components/Icon/iconRegistry.js +6 -0
- package/dist/cjs/components/Icon/iconRegistry.js.map +1 -1
- package/dist/cjs/components/Menu/Menu.css +112 -2
- package/dist/cjs/components/Menu/Menu.js +171 -39
- package/dist/cjs/components/Menu/Menu.js.map +1 -1
- package/dist/cjs/components/Menu/index.js +5 -1
- package/dist/cjs/components/Menu/index.js.map +1 -1
- package/dist/cjs/components/PhotoDraftStrip/PhotoDraftStrip.css +27 -0
- package/dist/cjs/components/PhotoDraftStrip/PhotoDraftStrip.js +36 -0
- package/dist/cjs/components/PhotoDraftStrip/PhotoDraftStrip.js.map +1 -0
- package/dist/cjs/components/PhotoDraftStrip/index.js +11 -0
- package/dist/cjs/components/PhotoDraftStrip/index.js.map +1 -0
- package/dist/cjs/components/RecordingBar/RecordingBar.css +47 -0
- package/dist/cjs/components/RecordingBar/RecordingBar.js +22 -0
- package/dist/cjs/components/RecordingBar/RecordingBar.js.map +1 -0
- package/dist/cjs/components/RecordingBar/index.js +11 -0
- package/dist/cjs/components/RecordingBar/index.js.map +1 -0
- package/dist/cjs/components/Scrollbar/Scrollbar.css +123 -0
- package/dist/cjs/components/Scrollbar/Scrollbar.js +118 -0
- package/dist/cjs/components/Scrollbar/Scrollbar.js.map +1 -0
- package/dist/cjs/components/Scrollbar/index.js +11 -0
- package/dist/cjs/components/Scrollbar/index.js.map +1 -0
- package/dist/cjs/components/VoiceMessage/VoiceMessage.css +29 -0
- package/dist/cjs/components/VoiceMessage/VoiceMessage.js +85 -0
- package/dist/cjs/components/VoiceMessage/VoiceMessage.js.map +1 -0
- package/dist/cjs/components/VoiceMessage/index.js +11 -0
- package/dist/cjs/components/VoiceMessage/index.js.map +1 -0
- package/dist/cjs/components/VoiceRecorder/audio.js +61 -0
- package/dist/cjs/components/VoiceRecorder/audio.js.map +1 -0
- package/dist/cjs/components/VoiceRecorder/index.js +16 -0
- package/dist/cjs/components/VoiceRecorder/index.js.map +1 -0
- package/dist/cjs/components/VoiceRecorder/useVoiceRecorder.js +213 -0
- package/dist/cjs/components/VoiceRecorder/useVoiceRecorder.js.map +1 -0
- package/dist/cjs/components/Waveform/Waveform.css +23 -0
- package/dist/cjs/components/Waveform/Waveform.js +36 -0
- package/dist/cjs/components/Waveform/Waveform.js.map +1 -0
- package/dist/cjs/components/Waveform/index.js +11 -0
- package/dist/cjs/components/Waveform/index.js.map +1 -0
- package/dist/cjs/components/index.js +27 -15
- package/dist/cjs/components/index.js.map +1 -1
- package/dist/esm/components/ActionSheet/ActionSheet.js +1 -1
- package/dist/esm/components/Breadcrumb/Breadcrumb.css +11 -3
- package/dist/esm/components/Breadcrumb/Breadcrumb.js +19 -1
- package/dist/esm/components/Breadcrumb/Breadcrumb.js.map +1 -1
- package/dist/esm/components/ChatComposer/ChatComposer.js +12 -4
- package/dist/esm/components/ChatComposer/ChatComposer.js.map +1 -1
- package/dist/esm/components/ContextSelect/ContextSelect.css +117 -0
- package/dist/esm/components/ContextSelect/ContextSelect.js +45 -0
- package/dist/esm/components/ContextSelect/ContextSelect.js.map +1 -0
- package/dist/esm/components/ContextSelect/index.js +3 -0
- package/dist/esm/components/ContextSelect/index.js.map +1 -0
- package/dist/esm/components/EmojiPicker/EmojiPicker.css +19 -0
- package/dist/esm/components/EmojiPicker/EmojiPicker.js +50 -0
- package/dist/esm/components/EmojiPicker/EmojiPicker.js.map +1 -0
- package/dist/esm/components/EmojiPicker/index.js +3 -0
- package/dist/esm/components/EmojiPicker/index.js.map +1 -0
- package/dist/esm/components/Icon/custom/ArrowDropUpDownIcon.js +7 -0
- package/dist/esm/components/Icon/custom/ArrowDropUpDownIcon.js.map +1 -0
- package/dist/esm/components/Icon/iconRegistry.js +6 -0
- package/dist/esm/components/Icon/iconRegistry.js.map +1 -1
- package/dist/esm/components/Menu/Menu.css +112 -2
- package/dist/esm/components/Menu/Menu.js +170 -40
- package/dist/esm/components/Menu/Menu.js.map +1 -1
- package/dist/esm/components/Menu/index.js +1 -1
- package/dist/esm/components/Menu/index.js.map +1 -1
- package/dist/esm/components/PhotoDraftStrip/PhotoDraftStrip.css +27 -0
- package/dist/esm/components/PhotoDraftStrip/PhotoDraftStrip.js +32 -0
- package/dist/esm/components/PhotoDraftStrip/PhotoDraftStrip.js.map +1 -0
- package/dist/esm/components/PhotoDraftStrip/index.js +3 -0
- package/dist/esm/components/PhotoDraftStrip/index.js.map +1 -0
- package/dist/esm/components/RecordingBar/RecordingBar.css +47 -0
- package/dist/esm/components/RecordingBar/RecordingBar.js +18 -0
- package/dist/esm/components/RecordingBar/RecordingBar.js.map +1 -0
- package/dist/esm/components/RecordingBar/index.js +3 -0
- package/dist/esm/components/RecordingBar/index.js.map +1 -0
- package/dist/esm/components/Scrollbar/Scrollbar.css +123 -0
- package/dist/esm/components/Scrollbar/Scrollbar.js +114 -0
- package/dist/esm/components/Scrollbar/Scrollbar.js.map +1 -0
- package/dist/esm/components/Scrollbar/index.js +3 -0
- package/dist/esm/components/Scrollbar/index.js.map +1 -0
- package/dist/esm/components/VoiceMessage/VoiceMessage.css +29 -0
- package/dist/esm/components/VoiceMessage/VoiceMessage.js +81 -0
- package/dist/esm/components/VoiceMessage/VoiceMessage.js.map +1 -0
- package/dist/esm/components/VoiceMessage/index.js +3 -0
- package/dist/esm/components/VoiceMessage/index.js.map +1 -0
- package/dist/esm/components/VoiceRecorder/audio.js +55 -0
- package/dist/esm/components/VoiceRecorder/audio.js.map +1 -0
- package/dist/esm/components/VoiceRecorder/index.js +4 -0
- package/dist/esm/components/VoiceRecorder/index.js.map +1 -0
- package/dist/esm/components/VoiceRecorder/useVoiceRecorder.js +210 -0
- package/dist/esm/components/VoiceRecorder/useVoiceRecorder.js.map +1 -0
- package/dist/esm/components/Waveform/Waveform.css +23 -0
- package/dist/esm/components/Waveform/Waveform.js +32 -0
- package/dist/esm/components/Waveform/Waveform.js.map +1 -0
- package/dist/esm/components/Waveform/index.js +3 -0
- package/dist/esm/components/Waveform/index.js.map +1 -0
- package/dist/esm/components/index.js +9 -2
- package/dist/esm/components/index.js.map +1 -1
- package/dist/styles/components/Breadcrumb.css +11 -3
- package/dist/styles/components/ContextSelect.css +117 -0
- package/dist/styles/components/EmojiPicker.css +19 -0
- package/dist/styles/components/Menu.css +112 -2
- package/dist/styles/components/PhotoDraftStrip.css +27 -0
- package/dist/styles/components/RecordingBar.css +47 -0
- package/dist/styles/components/Scrollbar.css +123 -0
- package/dist/styles/components/VoiceMessage.css +29 -0
- package/dist/styles/components/Waveform.css +23 -0
- package/dist/styles/index.css +919 -393
- package/dist/styles/muka-dark.css +919 -393
- package/dist/styles/muka-light.css +919 -393
- package/dist/styles/tokens-bouwplan-dark.css +4 -2
- package/dist/styles/tokens-bouwplan-light.css +4 -2
- package/dist/styles/tokens-fscl-dark.css +4 -2
- package/dist/styles/tokens-fscl-light.css +4 -2
- package/dist/styles/tokens-grip-dark.css +4 -2
- package/dist/styles/tokens-grip-light.css +4 -2
- package/dist/styles/tokens-muka-dark.css +4 -2
- package/dist/styles/tokens-muka-light.css +4 -2
- package/dist/styles/tokens-wireframe-dark.css +4 -2
- package/dist/styles/tokens-wireframe-light.css +4 -2
- package/dist/styles/wireframe-dark.css +919 -393
- package/dist/styles/wireframe-light.css +919 -393
- package/dist/types/components/ActionSheet/ActionSheet.d.ts +1 -1
- package/dist/types/components/Breadcrumb/Breadcrumb.d.ts +27 -3
- package/dist/types/components/Breadcrumb/Breadcrumb.d.ts.map +1 -1
- package/dist/types/components/ChatComposer/ChatComposer.d.ts +7 -0
- package/dist/types/components/ChatComposer/ChatComposer.d.ts.map +1 -1
- package/dist/types/components/ContextSelect/ContextSelect.d.ts +62 -0
- package/dist/types/components/ContextSelect/ContextSelect.d.ts.map +1 -0
- package/dist/types/components/ContextSelect/index.d.ts +3 -0
- package/dist/types/components/ContextSelect/index.d.ts.map +1 -0
- package/dist/types/components/DataTable/DataTable.d.ts +1 -1
- package/dist/types/components/EmojiPicker/EmojiPicker.d.ts +28 -0
- package/dist/types/components/EmojiPicker/EmojiPicker.d.ts.map +1 -0
- package/dist/types/components/EmojiPicker/index.d.ts +3 -0
- package/dist/types/components/EmojiPicker/index.d.ts.map +1 -0
- package/dist/types/components/Icon/custom/ArrowDropUpDownIcon.d.ts +9 -0
- package/dist/types/components/Icon/custom/ArrowDropUpDownIcon.d.ts.map +1 -0
- package/dist/types/components/Icon/iconRegistry.d.ts.map +1 -1
- package/dist/types/components/Menu/Menu.d.ts +58 -28
- package/dist/types/components/Menu/Menu.d.ts.map +1 -1
- package/dist/types/components/Menu/index.d.ts +2 -2
- package/dist/types/components/Menu/index.d.ts.map +1 -1
- package/dist/types/components/PhotoDraftStrip/PhotoDraftStrip.d.ts +51 -0
- package/dist/types/components/PhotoDraftStrip/PhotoDraftStrip.d.ts.map +1 -0
- package/dist/types/components/PhotoDraftStrip/index.d.ts +3 -0
- package/dist/types/components/PhotoDraftStrip/index.d.ts.map +1 -0
- package/dist/types/components/RecordingBar/RecordingBar.d.ts +22 -0
- package/dist/types/components/RecordingBar/RecordingBar.d.ts.map +1 -0
- package/dist/types/components/RecordingBar/index.d.ts +3 -0
- package/dist/types/components/RecordingBar/index.d.ts.map +1 -0
- package/dist/types/components/Scrollbar/Scrollbar.d.ts +19 -0
- package/dist/types/components/Scrollbar/Scrollbar.d.ts.map +1 -0
- package/dist/types/components/Scrollbar/index.d.ts +3 -0
- package/dist/types/components/Scrollbar/index.d.ts.map +1 -0
- package/dist/types/components/VoiceMessage/VoiceMessage.d.ts +34 -0
- package/dist/types/components/VoiceMessage/VoiceMessage.d.ts.map +1 -0
- package/dist/types/components/VoiceMessage/index.d.ts +3 -0
- package/dist/types/components/VoiceMessage/index.d.ts.map +1 -0
- package/dist/types/components/VoiceRecorder/audio.d.ts +20 -0
- package/dist/types/components/VoiceRecorder/audio.d.ts.map +1 -0
- package/dist/types/components/VoiceRecorder/index.d.ts +4 -0
- package/dist/types/components/VoiceRecorder/index.d.ts.map +1 -0
- package/dist/types/components/VoiceRecorder/useVoiceRecorder.d.ts +48 -0
- package/dist/types/components/VoiceRecorder/useVoiceRecorder.d.ts.map +1 -0
- package/dist/types/components/Waveform/Waveform.d.ts +31 -0
- package/dist/types/components/Waveform/Waveform.d.ts.map +1 -0
- package/dist/types/components/Waveform/index.d.ts +3 -0
- package/dist/types/components/Waveform/index.d.ts.map +1 -0
- package/dist/types/components/index.d.ts +10 -4
- package/dist/types/components/index.d.ts.map +1 -1
- package/package.json +1 -1
- package/tokens/README.md +1 -1
- package/tokens/t4-components/menu.json +12 -2
- package/dist/cjs/components/ContextMenu/ContextMenu.js +0 -186
- package/dist/cjs/components/ContextMenu/ContextMenu.js.map +0 -1
- package/dist/cjs/components/ContextMenu/index.js +0 -17
- package/dist/cjs/components/ContextMenu/index.js.map +0 -1
- package/dist/esm/components/ContextMenu/ContextMenu.js +0 -145
- package/dist/esm/components/ContextMenu/ContextMenu.js.map +0 -1
- package/dist/esm/components/ContextMenu/index.js +0 -2
- package/dist/esm/components/ContextMenu/index.js.map +0 -1
- package/dist/types/components/ContextMenu/ContextMenu.d.ts +0 -188
- package/dist/types/components/ContextMenu/ContextMenu.d.ts.map +0 -1
- package/dist/types/components/ContextMenu/index.d.ts +0 -3
- package/dist/types/components/ContextMenu/index.d.ts.map +0 -1
|
@@ -34,55 +34,165 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
34
34
|
};
|
|
35
35
|
})();
|
|
36
36
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
37
|
-
exports.MenuSubContent = exports.MenuSubTrigger = exports.MenuSub = exports.MenuRadioItem = exports.MenuRadioGroup = exports.MenuCheckboxItem = exports.MenuGroup = exports.MenuSeparator = exports.MenuItem = exports.MenuContent = exports.MenuTrigger = exports.Menu = void 0;
|
|
37
|
+
exports.MenuSubContent = exports.MenuSubTrigger = exports.MenuSub = exports.MenuRadioItem = exports.MenuRadioGroup = exports.MenuCheckboxItem = exports.MenuGroup = exports.MenuSeparator = exports.MenuItem = exports.MenuSearch = exports.MenuContent = exports.MenuTrigger = exports.DropdownMenu = exports.Menu = void 0;
|
|
38
|
+
exports.useMenuSearch = useMenuSearch;
|
|
39
|
+
exports.highlightMenuMatch = highlightMenuMatch;
|
|
38
40
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
39
41
|
const react_1 = __importStar(require("react"));
|
|
40
42
|
const DropdownMenuPrimitive = __importStar(require("@radix-ui/react-dropdown-menu"));
|
|
43
|
+
const ContextMenuPrimitive = __importStar(require("@radix-ui/react-context-menu"));
|
|
41
44
|
const Icon_1 = require("../Icon");
|
|
45
|
+
const Scrollbar_1 = require("../Scrollbar");
|
|
42
46
|
require("./Menu.css");
|
|
43
|
-
const MenuContext = (0, react_1.createContext)({});
|
|
47
|
+
const MenuContext = (0, react_1.createContext)({ trigger: 'click' });
|
|
48
|
+
const MenuSearchContext = (0, react_1.createContext)({
|
|
49
|
+
query: '',
|
|
50
|
+
setQuery: () => { },
|
|
51
|
+
searchable: false,
|
|
52
|
+
});
|
|
53
|
+
function useMenuSearch() {
|
|
54
|
+
return (0, react_1.useContext)(MenuSearchContext);
|
|
55
|
+
}
|
|
56
|
+
function useMenuPrimitives() {
|
|
57
|
+
const { trigger } = (0, react_1.useContext)(MenuContext);
|
|
58
|
+
return trigger === 'context' ? ContextMenuPrimitive : DropdownMenuPrimitive;
|
|
59
|
+
}
|
|
60
|
+
/** Bold the first case-insensitive match of `query` within `text`. */
|
|
61
|
+
function highlightMenuMatch(text, query) {
|
|
62
|
+
if (!query)
|
|
63
|
+
return text;
|
|
64
|
+
const lower = text.toLowerCase();
|
|
65
|
+
const q = query.toLowerCase();
|
|
66
|
+
const index = lower.indexOf(q);
|
|
67
|
+
if (index === -1)
|
|
68
|
+
return text;
|
|
69
|
+
const before = text.slice(0, index);
|
|
70
|
+
const match = text.slice(index, index + query.length);
|
|
71
|
+
const after = text.slice(index + query.length);
|
|
72
|
+
return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [before, (0, jsx_runtime_1.jsx)("span", { className: "muka-menu__match", children: match }), after] }));
|
|
73
|
+
}
|
|
74
|
+
function getSearchableText(children) {
|
|
75
|
+
if (typeof children === 'string' || typeof children === 'number') {
|
|
76
|
+
return String(children);
|
|
77
|
+
}
|
|
78
|
+
if (Array.isArray(children)) {
|
|
79
|
+
return children.map(getSearchableText).join('');
|
|
80
|
+
}
|
|
81
|
+
if (react_1.default.isValidElement(children)) {
|
|
82
|
+
const props = children.props;
|
|
83
|
+
return getSearchableText(props.children);
|
|
84
|
+
}
|
|
85
|
+
return '';
|
|
86
|
+
}
|
|
87
|
+
function matchesSearch(children, query) {
|
|
88
|
+
if (!query)
|
|
89
|
+
return true;
|
|
90
|
+
return getSearchableText(children).toLowerCase().includes(query.toLowerCase());
|
|
91
|
+
}
|
|
44
92
|
/**
|
|
45
|
-
* Menu
|
|
46
|
-
*
|
|
47
|
-
* A dropdown menu for displaying actions and options.
|
|
48
|
-
* Built on Radix UI DropdownMenu for accessibility and keyboard navigation.
|
|
93
|
+
* Menu (Dropdown Menu)
|
|
49
94
|
*
|
|
50
|
-
*
|
|
51
|
-
*
|
|
52
|
-
* <Menu>
|
|
53
|
-
* <MenuTrigger asChild>
|
|
54
|
-
* <Button>Open Menu</Button>
|
|
55
|
-
* </MenuTrigger>
|
|
56
|
-
* <MenuContent>
|
|
57
|
-
* <MenuItem onSelect={() => console.log('Edit')}>Edit</MenuItem>
|
|
58
|
-
* <MenuItem onSelect={() => console.log('Delete')} destructive>Delete</MenuItem>
|
|
59
|
-
* </MenuContent>
|
|
60
|
-
* </Menu>
|
|
61
|
-
* ```
|
|
95
|
+
* Shared action-menu surface for click and right-click triggers.
|
|
96
|
+
* Built on Radix DropdownMenu / ContextMenu.
|
|
62
97
|
*/
|
|
63
|
-
const Menu = ({ children, open, onOpenChange, defaultOpen, modal = true, }) => {
|
|
64
|
-
|
|
98
|
+
const Menu = ({ children, trigger = 'click', open, onOpenChange, defaultOpen, modal = true, }) => {
|
|
99
|
+
const value = (0, react_1.useMemo)(() => ({ trigger, onOpenChange }), [trigger, onOpenChange]);
|
|
100
|
+
if (trigger === 'context') {
|
|
101
|
+
return ((0, jsx_runtime_1.jsx)(MenuContext.Provider, { value: value, children: (0, jsx_runtime_1.jsx)(ContextMenuPrimitive.Root, { onOpenChange: onOpenChange, modal: modal, children: children }) }));
|
|
102
|
+
}
|
|
103
|
+
return ((0, jsx_runtime_1.jsx)(MenuContext.Provider, { value: value, children: (0, jsx_runtime_1.jsx)(DropdownMenuPrimitive.Root, { open: open, onOpenChange: onOpenChange, defaultOpen: defaultOpen, modal: modal, children: children }) }));
|
|
65
104
|
};
|
|
66
105
|
exports.Menu = Menu;
|
|
106
|
+
/** Alias for Figma / docs naming parity with "Dropdown Menu". */
|
|
107
|
+
exports.DropdownMenu = exports.Menu;
|
|
67
108
|
/**
|
|
68
|
-
* MenuTrigger
|
|
109
|
+
* MenuTrigger — opens the menu on click or right-click depending on `Menu.trigger`.
|
|
69
110
|
*/
|
|
70
|
-
exports.MenuTrigger = react_1.default.forwardRef(({ children, asChild = false, className = '' }, ref) => {
|
|
71
|
-
|
|
111
|
+
exports.MenuTrigger = react_1.default.forwardRef(({ children, asChild = false, disabled = false, className = '' }, ref) => {
|
|
112
|
+
const { trigger } = (0, react_1.useContext)(MenuContext);
|
|
113
|
+
const Primitives = useMenuPrimitives();
|
|
114
|
+
if (trigger === 'context') {
|
|
115
|
+
const triggerClasses = ['muka-context-menu__trigger', className]
|
|
116
|
+
.filter(Boolean)
|
|
117
|
+
.join(' ');
|
|
118
|
+
return ((0, jsx_runtime_1.jsx)(ContextMenuPrimitive.Trigger, { ref: ref, asChild: asChild, disabled: disabled, className: triggerClasses || undefined, children: children }));
|
|
119
|
+
}
|
|
120
|
+
return ((0, jsx_runtime_1.jsx)(Primitives.Trigger, { ref: ref, asChild: asChild, disabled: disabled, className: className || undefined, children: children }));
|
|
72
121
|
});
|
|
73
122
|
exports.MenuTrigger.displayName = 'MenuTrigger';
|
|
74
123
|
/**
|
|
75
|
-
* MenuContent
|
|
124
|
+
* MenuContent — dropdown / context menu surface with optional search + scrollbar.
|
|
76
125
|
*/
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
126
|
+
function isMenuSearchElement(child) {
|
|
127
|
+
return (react_1.default.isValidElement(child) &&
|
|
128
|
+
typeof child.type !== 'string' &&
|
|
129
|
+
Boolean(child.type &&
|
|
130
|
+
typeof child.type === 'object' &&
|
|
131
|
+
'displayName' in child.type &&
|
|
132
|
+
child.type.displayName === 'MenuSearch'));
|
|
133
|
+
}
|
|
134
|
+
function partitionMenuChildren(children) {
|
|
135
|
+
const search = [];
|
|
136
|
+
const items = [];
|
|
137
|
+
react_1.default.Children.forEach(children, (child) => {
|
|
138
|
+
if (isMenuSearchElement(child)) {
|
|
139
|
+
search.push(child);
|
|
140
|
+
}
|
|
141
|
+
else {
|
|
142
|
+
items.push(child);
|
|
143
|
+
}
|
|
144
|
+
});
|
|
145
|
+
return { search, items };
|
|
146
|
+
}
|
|
147
|
+
exports.MenuContent = react_1.default.forwardRef(({ children, align = 'start', side = 'bottom', sideOffset = 4, alignOffset = 0, className = '', loop = true, onCloseAutoFocus, searchable = false, scrollbar = false, }, ref) => {
|
|
148
|
+
const { trigger } = (0, react_1.useContext)(MenuContext);
|
|
149
|
+
const [query, setQuery] = (0, react_1.useState)('');
|
|
150
|
+
const viewportRef = (0, react_1.useRef)(null);
|
|
151
|
+
const searchValue = (0, react_1.useMemo)(() => ({ query, setQuery, searchable }), [query, searchable]);
|
|
152
|
+
const { search, items } = partitionMenuChildren(children);
|
|
153
|
+
const searchNodes = search.length > 0 ? search : searchable ? (0, jsx_runtime_1.jsx)(exports.MenuSearch, {}) : null;
|
|
154
|
+
const contentClasses = [
|
|
155
|
+
'muka-menu__content',
|
|
156
|
+
searchable && 'muka-menu__content--searchable',
|
|
157
|
+
scrollbar && 'muka-menu__content--scrollbar',
|
|
158
|
+
className,
|
|
159
|
+
]
|
|
160
|
+
.filter(Boolean)
|
|
161
|
+
.join(' ');
|
|
162
|
+
const body = ((0, jsx_runtime_1.jsxs)(MenuSearchContext.Provider, { value: searchValue, children: [searchNodes, (0, jsx_runtime_1.jsxs)("div", { className: "muka-menu__body", children: [(0, jsx_runtime_1.jsx)("div", { className: "muka-menu__viewport", ref: viewportRef, children: items }), scrollbar ? (0, jsx_runtime_1.jsx)(Scrollbar_1.Scrollbar, { viewportRef: viewportRef }) : null] })] }));
|
|
163
|
+
if (trigger === 'context') {
|
|
164
|
+
return ((0, jsx_runtime_1.jsx)(ContextMenuPrimitive.Portal, { children: (0, jsx_runtime_1.jsx)(ContextMenuPrimitive.Content, { ref: ref, alignOffset: alignOffset, className: contentClasses, loop: loop, onCloseAutoFocus: onCloseAutoFocus, children: body }) }));
|
|
165
|
+
}
|
|
166
|
+
return ((0, jsx_runtime_1.jsx)(DropdownMenuPrimitive.Portal, { children: (0, jsx_runtime_1.jsx)(DropdownMenuPrimitive.Content, { ref: ref, align: align, side: side, sideOffset: sideOffset, alignOffset: alignOffset, className: contentClasses, loop: loop, onCloseAutoFocus: onCloseAutoFocus, children: body }) }));
|
|
80
167
|
});
|
|
81
168
|
exports.MenuContent.displayName = 'MenuContent';
|
|
169
|
+
/**
|
|
170
|
+
* MenuSearch — sticky search header for filtering menu items.
|
|
171
|
+
* Must be used inside a `MenuContent` with `searchable`.
|
|
172
|
+
*/
|
|
173
|
+
exports.MenuSearch = react_1.default.forwardRef(({ placeholder = 'Search', className = '', 'aria-label': ariaLabel }, ref) => {
|
|
174
|
+
const { query, setQuery, searchable } = useMenuSearch();
|
|
175
|
+
const handleKeyDown = (0, react_1.useCallback)((e) => {
|
|
176
|
+
// Keep typing in the field from driving Radix typeahead / menu focus.
|
|
177
|
+
e.stopPropagation();
|
|
178
|
+
}, []);
|
|
179
|
+
if (!searchable) {
|
|
180
|
+
return null;
|
|
181
|
+
}
|
|
182
|
+
const rootClasses = ['muka-menu__search', className].filter(Boolean).join(' ');
|
|
183
|
+
return ((0, jsx_runtime_1.jsxs)("div", { className: rootClasses, "data-muka-menu-search": "", children: [(0, jsx_runtime_1.jsx)("span", { className: "muka-menu__search-icon", "aria-hidden": "true", children: (0, jsx_runtime_1.jsx)(Icon_1.Icon, { name: "search", variant: "line", size: "md" }) }), (0, jsx_runtime_1.jsx)("input", { ref: ref, type: "search", className: "muka-menu__search-input", value: query, onChange: (e) => setQuery(e.target.value), onKeyDown: handleKeyDown, placeholder: placeholder, "aria-label": ariaLabel || placeholder, autoComplete: "off", autoCorrect: "off", spellCheck: false }), query.length > 0 && ((0, jsx_runtime_1.jsx)("button", { type: "button", className: "muka-menu__search-clear", onClick: () => setQuery(''), "aria-label": "Clear search", tabIndex: -1, children: (0, jsx_runtime_1.jsx)(Icon_1.Icon, { name: "close", variant: "line", size: "sm" }) }))] }));
|
|
184
|
+
});
|
|
185
|
+
exports.MenuSearch.displayName = 'MenuSearch';
|
|
82
186
|
/**
|
|
83
187
|
* MenuItem - An action item within the menu
|
|
84
188
|
*/
|
|
85
|
-
exports.MenuItem = react_1.default.forwardRef(({ children, onSelect, disabled = false, destructive = false, icon, shortcut, className = '', }, ref) => {
|
|
189
|
+
exports.MenuItem = react_1.default.forwardRef(({ children, onSelect, disabled = false, destructive = false, icon, shortcut, className = '', textValue, }, ref) => {
|
|
190
|
+
const Primitives = useMenuPrimitives();
|
|
191
|
+
const { query, searchable } = useMenuSearch();
|
|
192
|
+
const labelText = textValue ?? getSearchableText(children);
|
|
193
|
+
if (searchable && query && !matchesSearch(labelText, query)) {
|
|
194
|
+
return null;
|
|
195
|
+
}
|
|
86
196
|
const itemClasses = [
|
|
87
197
|
'muka-menu__item',
|
|
88
198
|
destructive && 'muka-menu__item--destructive',
|
|
@@ -91,29 +201,37 @@ exports.MenuItem = react_1.default.forwardRef(({ children, onSelect, disabled =
|
|
|
91
201
|
]
|
|
92
202
|
.filter(Boolean)
|
|
93
203
|
.join(' ');
|
|
94
|
-
return ((0, jsx_runtime_1.jsxs)(
|
|
204
|
+
return ((0, jsx_runtime_1.jsxs)(Primitives.Item, { ref: ref, className: itemClasses, onSelect: onSelect, disabled: disabled, textValue: labelText, children: [icon && (0, jsx_runtime_1.jsx)("span", { className: "muka-menu__item-icon", children: icon }), (0, jsx_runtime_1.jsx)("span", { className: "muka-menu__item-label", children: searchable && query ? highlightMenuMatch(labelText, query) : children }), shortcut && (0, jsx_runtime_1.jsx)("span", { className: "muka-menu__item-shortcut", children: shortcut })] }));
|
|
95
205
|
});
|
|
96
206
|
exports.MenuItem.displayName = 'MenuItem';
|
|
97
207
|
/**
|
|
98
208
|
* MenuSeparator - A visual divider between menu items
|
|
99
209
|
*/
|
|
100
210
|
exports.MenuSeparator = react_1.default.forwardRef(({ className = '' }, ref) => {
|
|
211
|
+
const Primitives = useMenuPrimitives();
|
|
101
212
|
const separatorClasses = ['muka-menu__separator', className].filter(Boolean).join(' ');
|
|
102
|
-
return (0, jsx_runtime_1.jsx)(
|
|
213
|
+
return (0, jsx_runtime_1.jsx)(Primitives.Separator, { ref: ref, className: separatorClasses });
|
|
103
214
|
});
|
|
104
215
|
exports.MenuSeparator.displayName = 'MenuSeparator';
|
|
105
216
|
/**
|
|
106
217
|
* MenuGroup - A labeled group of menu items
|
|
107
218
|
*/
|
|
108
219
|
exports.MenuGroup = react_1.default.forwardRef(({ children, label, className = '' }, ref) => {
|
|
220
|
+
const Primitives = useMenuPrimitives();
|
|
109
221
|
const groupClasses = ['muka-menu__group', className].filter(Boolean).join(' ');
|
|
110
|
-
return ((0, jsx_runtime_1.jsxs)(
|
|
222
|
+
return ((0, jsx_runtime_1.jsxs)(Primitives.Group, { ref: ref, className: groupClasses, children: [label && (0, jsx_runtime_1.jsx)(Primitives.Label, { className: "muka-menu__group-label", children: label }), children] }));
|
|
111
223
|
});
|
|
112
224
|
exports.MenuGroup.displayName = 'MenuGroup';
|
|
113
225
|
/**
|
|
114
226
|
* MenuCheckboxItem - A checkable menu item
|
|
115
227
|
*/
|
|
116
|
-
exports.MenuCheckboxItem = react_1.default.forwardRef(({ children, checked, onCheckedChange, disabled = false, icon, className = '' }, ref) => {
|
|
228
|
+
exports.MenuCheckboxItem = react_1.default.forwardRef(({ children, checked, onCheckedChange, disabled = false, icon, className = '', textValue, }, ref) => {
|
|
229
|
+
const Primitives = useMenuPrimitives();
|
|
230
|
+
const { query, searchable } = useMenuSearch();
|
|
231
|
+
const labelText = textValue ?? getSearchableText(children);
|
|
232
|
+
if (searchable && query && !matchesSearch(labelText, query)) {
|
|
233
|
+
return null;
|
|
234
|
+
}
|
|
117
235
|
const itemClasses = [
|
|
118
236
|
'muka-menu__item',
|
|
119
237
|
'muka-menu__item--checkbox',
|
|
@@ -122,44 +240,54 @@ exports.MenuCheckboxItem = react_1.default.forwardRef(({ children, checked, onCh
|
|
|
122
240
|
]
|
|
123
241
|
.filter(Boolean)
|
|
124
242
|
.join(' ');
|
|
125
|
-
const indicator = ((0, jsx_runtime_1.jsx)("span", { className: "muka-menu__item-indicator", children: (0, jsx_runtime_1.jsx)(
|
|
126
|
-
return ((0, jsx_runtime_1.jsxs)(
|
|
243
|
+
const indicator = ((0, jsx_runtime_1.jsx)("span", { className: "muka-menu__item-indicator", children: (0, jsx_runtime_1.jsx)(Primitives.ItemIndicator, { children: (0, jsx_runtime_1.jsx)(Icon_1.Icon, { name: "check", size: "sm" }) }) }));
|
|
244
|
+
return ((0, jsx_runtime_1.jsxs)(Primitives.CheckboxItem, { ref: ref, className: itemClasses, checked: checked, onCheckedChange: onCheckedChange, disabled: disabled, textValue: labelText, children: [icon ? (0, jsx_runtime_1.jsx)("span", { className: "muka-menu__item-icon", children: icon }) : indicator, (0, jsx_runtime_1.jsx)("span", { className: "muka-menu__item-label", children: searchable && query ? highlightMenuMatch(labelText, query) : children }), icon ? indicator : null] }));
|
|
127
245
|
});
|
|
128
246
|
exports.MenuCheckboxItem.displayName = 'MenuCheckboxItem';
|
|
129
247
|
/**
|
|
130
248
|
* MenuRadioGroup - A group of radio menu items
|
|
131
249
|
*/
|
|
132
250
|
exports.MenuRadioGroup = react_1.default.forwardRef(({ children, value, onValueChange, className = '' }, ref) => {
|
|
251
|
+
const Primitives = useMenuPrimitives();
|
|
133
252
|
const groupClasses = ['muka-menu__radio-group', className].filter(Boolean).join(' ');
|
|
134
|
-
return ((0, jsx_runtime_1.jsx)(
|
|
253
|
+
return ((0, jsx_runtime_1.jsx)(Primitives.RadioGroup, { ref: ref, className: groupClasses, value: value, onValueChange: onValueChange, children: children }));
|
|
135
254
|
});
|
|
136
255
|
exports.MenuRadioGroup.displayName = 'MenuRadioGroup';
|
|
137
256
|
/**
|
|
138
257
|
* MenuRadioItem - A radio option within a MenuRadioGroup
|
|
139
258
|
*/
|
|
140
|
-
exports.MenuRadioItem = react_1.default.forwardRef(({ children, value, disabled = false, className = '' }, ref) => {
|
|
259
|
+
exports.MenuRadioItem = react_1.default.forwardRef(({ children, value, disabled = false, className = '', indicator = 'dot', textValue, }, ref) => {
|
|
260
|
+
const Primitives = useMenuPrimitives();
|
|
261
|
+
const { query, searchable } = useMenuSearch();
|
|
262
|
+
const labelText = textValue ?? getSearchableText(children);
|
|
263
|
+
if (searchable && query && !matchesSearch(labelText, query)) {
|
|
264
|
+
return null;
|
|
265
|
+
}
|
|
141
266
|
const itemClasses = [
|
|
142
267
|
'muka-menu__item',
|
|
143
268
|
'muka-menu__item--radio',
|
|
269
|
+
indicator === 'check' && 'muka-menu__item--radio-check',
|
|
144
270
|
disabled && 'muka-menu__item--disabled',
|
|
145
271
|
className,
|
|
146
272
|
]
|
|
147
273
|
.filter(Boolean)
|
|
148
274
|
.join(' ');
|
|
149
|
-
return ((0, jsx_runtime_1.jsxs)(
|
|
275
|
+
return ((0, jsx_runtime_1.jsxs)(Primitives.RadioItem, { ref: ref, className: itemClasses, value: value, disabled: disabled, textValue: labelText, children: [indicator === 'dot' && ((0, jsx_runtime_1.jsx)("span", { className: "muka-menu__item-indicator", children: (0, jsx_runtime_1.jsx)(Primitives.ItemIndicator, { children: (0, jsx_runtime_1.jsx)("span", { className: "muka-menu__radio-dot" }) }) })), (0, jsx_runtime_1.jsx)("span", { className: "muka-menu__item-label", children: searchable && query ? highlightMenuMatch(labelText, query) : children }), indicator === 'check' && ((0, jsx_runtime_1.jsx)("span", { className: "muka-menu__item-indicator muka-menu__item-indicator--trailing", children: (0, jsx_runtime_1.jsx)(Primitives.ItemIndicator, { children: (0, jsx_runtime_1.jsx)(Icon_1.Icon, { name: "check", size: "sm" }) }) }))] }));
|
|
150
276
|
});
|
|
151
277
|
exports.MenuRadioItem.displayName = 'MenuRadioItem';
|
|
152
278
|
/**
|
|
153
279
|
* MenuSub - A submenu container
|
|
154
280
|
*/
|
|
155
281
|
const MenuSub = ({ children, open, onOpenChange, defaultOpen, }) => {
|
|
156
|
-
|
|
282
|
+
const Primitives = useMenuPrimitives();
|
|
283
|
+
return ((0, jsx_runtime_1.jsx)(Primitives.Sub, { open: open, onOpenChange: onOpenChange, defaultOpen: defaultOpen, children: children }));
|
|
157
284
|
};
|
|
158
285
|
exports.MenuSub = MenuSub;
|
|
159
286
|
/**
|
|
160
287
|
* MenuSubTrigger - Trigger that opens a submenu
|
|
161
288
|
*/
|
|
162
289
|
exports.MenuSubTrigger = react_1.default.forwardRef(({ children, icon, disabled = false, className = '' }, ref) => {
|
|
290
|
+
const Primitives = useMenuPrimitives();
|
|
163
291
|
const itemClasses = [
|
|
164
292
|
'muka-menu__item',
|
|
165
293
|
'muka-menu__item--sub-trigger',
|
|
@@ -168,16 +296,20 @@ exports.MenuSubTrigger = react_1.default.forwardRef(({ children, icon, disabled
|
|
|
168
296
|
]
|
|
169
297
|
.filter(Boolean)
|
|
170
298
|
.join(' ');
|
|
171
|
-
return ((0, jsx_runtime_1.jsxs)(
|
|
299
|
+
return ((0, jsx_runtime_1.jsxs)(Primitives.SubTrigger, { ref: ref, className: itemClasses, disabled: disabled, children: [icon && (0, jsx_runtime_1.jsx)("span", { className: "muka-menu__item-icon", children: icon }), (0, jsx_runtime_1.jsx)("span", { className: "muka-menu__item-label", children: children }), (0, jsx_runtime_1.jsx)("span", { className: "muka-menu__item-chevron", children: (0, jsx_runtime_1.jsx)(Icon_1.Icon, { name: "arrow-right", variant: "line", size: "sm" }) })] }));
|
|
172
300
|
});
|
|
173
301
|
exports.MenuSubTrigger.displayName = 'MenuSubTrigger';
|
|
174
302
|
/**
|
|
175
303
|
* MenuSubContent - The dropdown container for submenu items
|
|
176
304
|
*/
|
|
177
305
|
exports.MenuSubContent = react_1.default.forwardRef(({ children, sideOffset = 2, alignOffset = -4, className = '', loop = true }, ref) => {
|
|
306
|
+
const { trigger } = (0, react_1.useContext)(MenuContext);
|
|
178
307
|
const contentClasses = ['muka-menu__content', 'muka-menu__content--sub', className]
|
|
179
308
|
.filter(Boolean)
|
|
180
309
|
.join(' ');
|
|
310
|
+
if (trigger === 'context') {
|
|
311
|
+
return ((0, jsx_runtime_1.jsx)(ContextMenuPrimitive.Portal, { children: (0, jsx_runtime_1.jsx)(ContextMenuPrimitive.SubContent, { ref: ref, sideOffset: sideOffset, alignOffset: alignOffset, className: contentClasses, loop: loop, children: children }) }));
|
|
312
|
+
}
|
|
181
313
|
return ((0, jsx_runtime_1.jsx)(DropdownMenuPrimitive.Portal, { children: (0, jsx_runtime_1.jsx)(DropdownMenuPrimitive.SubContent, { ref: ref, sideOffset: sideOffset, alignOffset: alignOffset, className: contentClasses, loop: loop, children: children }) }));
|
|
182
314
|
});
|
|
183
315
|
exports.MenuSubContent.displayName = 'MenuSubContent';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Menu.js","sourceRoot":"","sources":["../../../../components/Menu/Menu.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Menu.js","sourceRoot":"","sources":["../../../../components/Menu/Menu.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.MenuSubContent = exports.MenuSubTrigger = exports.MenuSub = exports.MenuRadioItem = exports.MenuRadioGroup = exports.MenuCheckboxItem = exports.MenuGroup = exports.MenuSeparator = exports.MenuItem = exports.MenuContent = exports.MenuTrigger = exports.Menu = void 0;
|
|
3
|
+
exports.useMenuSearch = exports.highlightMenuMatch = exports.MenuSubContent = exports.MenuSubTrigger = exports.MenuSub = exports.MenuRadioItem = exports.MenuRadioGroup = exports.MenuCheckboxItem = exports.MenuGroup = exports.MenuSeparator = exports.MenuItem = exports.MenuSearch = exports.MenuContent = exports.MenuTrigger = exports.DropdownMenu = exports.Menu = void 0;
|
|
4
4
|
var Menu_1 = require("./Menu");
|
|
5
5
|
Object.defineProperty(exports, "Menu", { enumerable: true, get: function () { return Menu_1.Menu; } });
|
|
6
|
+
Object.defineProperty(exports, "DropdownMenu", { enumerable: true, get: function () { return Menu_1.DropdownMenu; } });
|
|
6
7
|
Object.defineProperty(exports, "MenuTrigger", { enumerable: true, get: function () { return Menu_1.MenuTrigger; } });
|
|
7
8
|
Object.defineProperty(exports, "MenuContent", { enumerable: true, get: function () { return Menu_1.MenuContent; } });
|
|
9
|
+
Object.defineProperty(exports, "MenuSearch", { enumerable: true, get: function () { return Menu_1.MenuSearch; } });
|
|
8
10
|
Object.defineProperty(exports, "MenuItem", { enumerable: true, get: function () { return Menu_1.MenuItem; } });
|
|
9
11
|
Object.defineProperty(exports, "MenuSeparator", { enumerable: true, get: function () { return Menu_1.MenuSeparator; } });
|
|
10
12
|
Object.defineProperty(exports, "MenuGroup", { enumerable: true, get: function () { return Menu_1.MenuGroup; } });
|
|
@@ -14,4 +16,6 @@ Object.defineProperty(exports, "MenuRadioItem", { enumerable: true, get: functio
|
|
|
14
16
|
Object.defineProperty(exports, "MenuSub", { enumerable: true, get: function () { return Menu_1.MenuSub; } });
|
|
15
17
|
Object.defineProperty(exports, "MenuSubTrigger", { enumerable: true, get: function () { return Menu_1.MenuSubTrigger; } });
|
|
16
18
|
Object.defineProperty(exports, "MenuSubContent", { enumerable: true, get: function () { return Menu_1.MenuSubContent; } });
|
|
19
|
+
Object.defineProperty(exports, "highlightMenuMatch", { enumerable: true, get: function () { return Menu_1.highlightMenuMatch; } });
|
|
20
|
+
Object.defineProperty(exports, "useMenuSearch", { enumerable: true, get: function () { return Menu_1.useMenuSearch; } });
|
|
17
21
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../components/Menu/index.ts"],"names":[],"mappings":";;;AAAA,+
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../components/Menu/index.ts"],"names":[],"mappings":";;;AAAA,+BAiBgB;AAhBd,4FAAA,IAAI,OAAA;AACJ,oGAAA,YAAY,OAAA;AACZ,mGAAA,WAAW,OAAA;AACX,mGAAA,WAAW,OAAA;AACX,kGAAA,UAAU,OAAA;AACV,gGAAA,QAAQ,OAAA;AACR,qGAAA,aAAa,OAAA;AACb,iGAAA,SAAS,OAAA;AACT,wGAAA,gBAAgB,OAAA;AAChB,sGAAA,cAAc,OAAA;AACd,qGAAA,aAAa,OAAA;AACb,+FAAA,OAAO,OAAA;AACP,sGAAA,cAAc,OAAA;AACd,sGAAA,cAAc,OAAA;AACd,0GAAA,kBAAkB,OAAA;AAClB,qGAAA,aAAa,OAAA"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/* PhotoDraftStrip Component Styles */
|
|
2
|
+
|
|
3
|
+
.muka-photo-draft-strip {
|
|
4
|
+
display: flex;
|
|
5
|
+
align-items: center;
|
|
6
|
+
gap: var(--spacing-3);
|
|
7
|
+
width: 100%;
|
|
8
|
+
padding: var(--spacing-2) 0;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
.muka-photo-draft-strip__track {
|
|
12
|
+
display: flex;
|
|
13
|
+
gap: var(--spacing-2);
|
|
14
|
+
flex: 1 1 auto;
|
|
15
|
+
min-width: 0;
|
|
16
|
+
overflow-x: auto;
|
|
17
|
+
scroll-behavior: smooth;
|
|
18
|
+
scrollbar-width: none;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
.muka-photo-draft-strip__track::-webkit-scrollbar {
|
|
22
|
+
display: none;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
.muka-photo-draft-strip__item {
|
|
26
|
+
flex: 0 0 auto;
|
|
27
|
+
}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
'use client';
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.PhotoDraftStrip = void 0;
|
|
5
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
6
|
+
const Button_1 = require("../Button");
|
|
7
|
+
const Icon_1 = require("../Icon");
|
|
8
|
+
const Spinner_1 = require("../Spinner");
|
|
9
|
+
const Thumbnail_1 = require("../Thumbnail");
|
|
10
|
+
require("./PhotoDraftStrip.css");
|
|
11
|
+
/**
|
|
12
|
+
* PhotoDraftStrip — a controlled, horizontally-scrolling strip of staged photos
|
|
13
|
+
* shown above the composer while they upload. Each tile is a Muka `Thumbnail`
|
|
14
|
+
* carrying its own upload progress / error and a remove (×) control, so a
|
|
15
|
+
* per-item failure never blocks sending the rest.
|
|
16
|
+
*
|
|
17
|
+
* Controlled and network-free: the app owns upload, object URLs and the cap on
|
|
18
|
+
* how many photos may be staged. The optional send button lives here because
|
|
19
|
+
* the composer only enables its own send once text is non-empty — it can't send
|
|
20
|
+
* a caption-less gallery. Sending is enabled once every tile has settled and at
|
|
21
|
+
* least one uploaded successfully.
|
|
22
|
+
*/
|
|
23
|
+
const PhotoDraftStrip = ({ photos, onRemove, onSend, sending = false, showSend = true, sendLabel = 'Send photos', removeLabel = 'Remove photo', viewLabel = 'View photo', errorCaption = 'Upload failed', className = '', }) => {
|
|
24
|
+
if (photos.length === 0)
|
|
25
|
+
return null;
|
|
26
|
+
// Allow sending once every tile settled (uploaded or failed) and at least one
|
|
27
|
+
// uploaded successfully — a failed tile shouldn't block the rest.
|
|
28
|
+
const anyUploading = photos.some((p) => p.status === 'uploading');
|
|
29
|
+
const anyReady = photos.some((p) => p.status === 'ready');
|
|
30
|
+
const canSend = !sending && !anyUploading && anyReady;
|
|
31
|
+
const classes = ['muka-photo-draft-strip', className].filter(Boolean).join(' ');
|
|
32
|
+
return ((0, jsx_runtime_1.jsxs)("div", { className: classes, children: [(0, jsx_runtime_1.jsx)("div", { className: "muka-photo-draft-strip__track", children: photos.map((photo) => ((0, jsx_runtime_1.jsx)("div", { className: "muka-photo-draft-strip__item", children: (0, jsx_runtime_1.jsx)(Thumbnail_1.Thumbnail, { src: photo.previewUrl, alt: photo.fileName, shape: "1:1", processing: photo.status === 'uploading' && photo.progress <= 0, loading: photo.status === 'uploading' && photo.progress > 0, progress: photo.progress, error: photo.status === 'error', caption: photo.status === 'error' ? errorCaption : undefined, onRemove: () => onRemove(photo.id), removeLabel: removeLabel, viewLabel: viewLabel }) }, photo.id))) }), showSend && ((0, jsx_runtime_1.jsx)(Button_1.Button, { variant: "primary", size: "lg", iconOnly: true, "aria-label": sendLabel, onClick: onSend, disabled: !canSend, children: sending ? ((0, jsx_runtime_1.jsx)(Spinner_1.Spinner, { size: "sm", variant: "inverse" })) : ((0, jsx_runtime_1.jsx)(Icon_1.Icon, { name: "send-plane2", size: "md" })) }))] }));
|
|
33
|
+
};
|
|
34
|
+
exports.PhotoDraftStrip = PhotoDraftStrip;
|
|
35
|
+
exports.default = exports.PhotoDraftStrip;
|
|
36
|
+
//# sourceMappingURL=PhotoDraftStrip.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PhotoDraftStrip.js","sourceRoot":"","sources":["../../../../components/PhotoDraftStrip/PhotoDraftStrip.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAC;;;;AAGb,sCAAmC;AACnC,kCAA+B;AAC/B,wCAAqC;AACrC,4CAAyC;AACzC,iCAA+B;AA+C/B;;;;;;;;;;;GAWG;AACI,MAAM,eAAe,GAAmC,CAAC,EAC9D,MAAM,EACN,QAAQ,EACR,MAAM,EACN,OAAO,GAAG,KAAK,EACf,QAAQ,GAAG,IAAI,EACf,SAAS,GAAG,aAAa,EACzB,WAAW,GAAG,cAAc,EAC5B,SAAS,GAAG,YAAY,EACxB,YAAY,GAAG,eAAe,EAC9B,SAAS,GAAG,EAAE,GACf,EAAE,EAAE;IACH,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAErC,8EAA8E;IAC9E,kEAAkE;IAClE,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC;IAClE,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,OAAO,CAAC,CAAC;IAC1D,MAAM,OAAO,GAAG,CAAC,OAAO,IAAI,CAAC,YAAY,IAAI,QAAQ,CAAC;IAEtD,MAAM,OAAO,GAAG,CAAC,wBAAwB,EAAE,SAAS,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAEhF,OAAO,CACL,iCAAK,SAAS,EAAE,OAAO,aACrB,gCAAK,SAAS,EAAC,+BAA+B,YAC3C,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CACrB,gCAAoB,SAAS,EAAC,8BAA8B,YAC1D,uBAAC,qBAAS,IACR,GAAG,EAAE,KAAK,CAAC,UAAU,EACrB,GAAG,EAAE,KAAK,CAAC,QAAQ,EACnB,KAAK,EAAC,KAAK,EACX,UAAU,EAAE,KAAK,CAAC,MAAM,KAAK,WAAW,IAAI,KAAK,CAAC,QAAQ,IAAI,CAAC,EAC/D,OAAO,EAAE,KAAK,CAAC,MAAM,KAAK,WAAW,IAAI,KAAK,CAAC,QAAQ,GAAG,CAAC,EAC3D,QAAQ,EAAE,KAAK,CAAC,QAAQ,EACxB,KAAK,EAAE,KAAK,CAAC,MAAM,KAAK,OAAO,EAC/B,OAAO,EAAE,KAAK,CAAC,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,EAC5D,QAAQ,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,EAClC,WAAW,EAAE,WAAW,EACxB,SAAS,EAAE,SAAS,GACpB,IAbM,KAAK,CAAC,EAAE,CAcZ,CACP,CAAC,GACE,EAEL,QAAQ,IAAI,CACX,uBAAC,eAAM,IACL,OAAO,EAAC,SAAS,EACjB,IAAI,EAAC,IAAI,EACT,QAAQ,sBACI,SAAS,EACrB,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,CAAC,OAAO,YAEjB,OAAO,CAAC,CAAC,CAAC,CACT,uBAAC,iBAAO,IAAC,IAAI,EAAC,IAAI,EAAC,OAAO,EAAC,SAAS,GAAG,CACxC,CAAC,CAAC,CAAC,CACF,uBAAC,WAAI,IAAC,IAAI,EAAC,aAAa,EAAC,IAAI,EAAC,IAAI,GAAG,CACtC,GACM,CACV,IACG,CACP,CAAC;AACJ,CAAC,CAAC;AA9DW,QAAA,eAAe,mBA8D1B;AAEF,kBAAe,uBAAe,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.default = exports.PhotoDraftStrip = void 0;
|
|
7
|
+
var PhotoDraftStrip_1 = require("./PhotoDraftStrip");
|
|
8
|
+
Object.defineProperty(exports, "PhotoDraftStrip", { enumerable: true, get: function () { return PhotoDraftStrip_1.PhotoDraftStrip; } });
|
|
9
|
+
var PhotoDraftStrip_2 = require("./PhotoDraftStrip");
|
|
10
|
+
Object.defineProperty(exports, "default", { enumerable: true, get: function () { return __importDefault(PhotoDraftStrip_2).default; } });
|
|
11
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../components/PhotoDraftStrip/index.ts"],"names":[],"mappings":";;;;;;AAAA,qDAI2B;AAHzB,kHAAA,eAAe,OAAA;AAIjB,qDAA4C;AAAnC,2HAAA,OAAO,OAAA"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
/* RecordingBar Component Styles */
|
|
2
|
+
|
|
3
|
+
.muka-recording-bar {
|
|
4
|
+
display: flex;
|
|
5
|
+
align-items: center;
|
|
6
|
+
gap: var(--spacing-3);
|
|
7
|
+
width: 100%;
|
|
8
|
+
min-width: 0;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
.muka-recording-bar__dot {
|
|
12
|
+
flex: 0 0 auto;
|
|
13
|
+
width: 0.625rem;
|
|
14
|
+
height: 0.625rem;
|
|
15
|
+
border-radius: var(--radius-full, 9999px);
|
|
16
|
+
background: var(--alert-color-error-accent, var(--color-text-default-default));
|
|
17
|
+
animation: muka-recording-bar-pulse 1s ease-in-out infinite;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
.muka-recording-bar__time {
|
|
21
|
+
flex: 0 0 auto;
|
|
22
|
+
font-size: var(--text-label-sm-fontSize, 0.75rem);
|
|
23
|
+
line-height: var(--text-label-sm-lineHeight, 1);
|
|
24
|
+
font-variant-numeric: tabular-nums;
|
|
25
|
+
color: var(--color-text-default-default);
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
.muka-recording-bar__wave {
|
|
29
|
+
flex: 1 1 auto;
|
|
30
|
+
min-width: 0;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
@keyframes muka-recording-bar-pulse {
|
|
34
|
+
0%,
|
|
35
|
+
100% {
|
|
36
|
+
opacity: 1;
|
|
37
|
+
}
|
|
38
|
+
50% {
|
|
39
|
+
opacity: 0.3;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
@media (prefers-reduced-motion: reduce) {
|
|
44
|
+
.muka-recording-bar__dot {
|
|
45
|
+
animation: none;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
'use client';
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.RecordingBar = void 0;
|
|
5
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
6
|
+
const Waveform_1 = require("../Waveform");
|
|
7
|
+
const VoiceRecorder_1 = require("../VoiceRecorder");
|
|
8
|
+
require("./RecordingBar.css");
|
|
9
|
+
/**
|
|
10
|
+
* RecordingBar — drop-in content for `ChatComposer.recordingSlot` while a voice
|
|
11
|
+
* note is being recorded. A pulsing record dot, an elapsed timer, and the live
|
|
12
|
+
* `Waveform`. Muka delegates this slot to the app, but ships this default so
|
|
13
|
+
* consumers don't rebuild it. Feed it straight from `useVoiceRecorder`
|
|
14
|
+
* (`elapsedMs`, `livePeaks`). Tokens only; the label comes via props.
|
|
15
|
+
*/
|
|
16
|
+
const RecordingBar = ({ elapsedMs, livePeaks, recordingLabel = 'Recording', className = '', }) => {
|
|
17
|
+
const classes = ['muka-recording-bar', className].filter(Boolean).join(' ');
|
|
18
|
+
return ((0, jsx_runtime_1.jsxs)("div", { className: classes, role: "status", "aria-label": recordingLabel, children: [(0, jsx_runtime_1.jsx)("span", { className: "muka-recording-bar__dot", "aria-hidden": "true" }), (0, jsx_runtime_1.jsx)("span", { className: "muka-recording-bar__time", children: (0, VoiceRecorder_1.formatClock)(elapsedMs / 1000) }), (0, jsx_runtime_1.jsx)("div", { className: "muka-recording-bar__wave", children: (0, jsx_runtime_1.jsx)(Waveform_1.Waveform, { peaks: livePeaks, progress: 1 }) })] }));
|
|
19
|
+
};
|
|
20
|
+
exports.RecordingBar = RecordingBar;
|
|
21
|
+
exports.default = exports.RecordingBar;
|
|
22
|
+
//# sourceMappingURL=RecordingBar.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RecordingBar.js","sourceRoot":"","sources":["../../../../components/RecordingBar/RecordingBar.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAC;;;;AAGb,0CAAuC;AACvC,oDAA+C;AAC/C,8BAA4B;AAgB5B;;;;;;GAMG;AACI,MAAM,YAAY,GAAgC,CAAC,EACxD,SAAS,EACT,SAAS,EACT,cAAc,GAAG,WAAW,EAC5B,SAAS,GAAG,EAAE,GACf,EAAE,EAAE;IACH,MAAM,OAAO,GAAG,CAAC,oBAAoB,EAAE,SAAS,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAE5E,OAAO,CACL,iCAAK,SAAS,EAAE,OAAO,EAAE,IAAI,EAAC,QAAQ,gBAAa,cAAc,aAC/D,iCAAM,SAAS,EAAC,yBAAyB,iBAAa,MAAM,GAAG,EAC/D,iCAAM,SAAS,EAAC,0BAA0B,YAAE,IAAA,2BAAW,EAAC,SAAS,GAAG,IAAI,CAAC,GAAQ,EACjF,gCAAK,SAAS,EAAC,0BAA0B,YACvC,uBAAC,mBAAQ,IAAC,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,GAAI,GACvC,IACF,CACP,CAAC;AACJ,CAAC,CAAC;AAjBW,QAAA,YAAY,gBAiBvB;AAEF,kBAAe,oBAAY,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.default = exports.RecordingBar = void 0;
|
|
7
|
+
var RecordingBar_1 = require("./RecordingBar");
|
|
8
|
+
Object.defineProperty(exports, "RecordingBar", { enumerable: true, get: function () { return RecordingBar_1.RecordingBar; } });
|
|
9
|
+
var RecordingBar_2 = require("./RecordingBar");
|
|
10
|
+
Object.defineProperty(exports, "default", { enumerable: true, get: function () { return __importDefault(RecordingBar_2).default; } });
|
|
11
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../components/RecordingBar/index.ts"],"names":[],"mappings":";;;;;;AAAA,+CAAsE;AAA7D,4GAAA,YAAY,OAAA;AACrB,+CAAyC;AAAhC,wHAAA,OAAO,OAAA"}
|