Private
Public Access
1
0

feat: Fluent UI Outlook Lite + connections mockup

This commit is contained in:
2026-04-14 18:52:25 +00:00
parent 1199eff6c3
commit dfa4010406
34820 changed files with 1003813 additions and 205 deletions

View File

@@ -0,0 +1,37 @@
'use client';
import * as React from 'react';
import { applyTriggerPropsToChildren, getTriggerChild, getReactElementRef, useEventCallback } from '@fluentui/react-utilities';
import { useARIAButtonProps } from '@fluentui/react-aria';
import { useToastContainerContext } from '../../contexts/toastContainerContext';
/**
* A non-visual component that wraps its child
* and configures them to be the trigger that will close a `Toast`.
* This component should only accept one child.
*
* This component sole purpose is to avoid opting out of the internal controlled open state of a `Toast`
* Besides being a trigger that closes a toast through context this component doesn't do much,
* making it basically unnecessary in cases where the trigger is outside of a toast.
*/ export const useToastTrigger_unstable = (props)=>{
const { children, disableButtonEnhancement = false } = props;
const { close } = useToastContainerContext();
const child = getTriggerChild(children);
const handleClick = useEventCallback((e)=>{
var _child_props_onClick, _child_props;
child === null || child === void 0 ? void 0 : (_child_props_onClick = (_child_props = child.props).onClick) === null || _child_props_onClick === void 0 ? void 0 : _child_props_onClick.call(_child_props, e);
if (!e.isDefaultPrevented()) {
close();
}
});
const triggerChildProps = {
...child === null || child === void 0 ? void 0 : child.props,
ref: getReactElementRef(child),
onClick: handleClick
};
const ariaButtonTriggerChildProps = useARIAButtonProps((child === null || child === void 0 ? void 0 : child.type) === 'button' || (child === null || child === void 0 ? void 0 : child.type) === 'a' ? child.type : 'div', {
...triggerChildProps,
type: 'button'
});
return {
children: applyTriggerPropsToChildren(children, disableButtonEnhancement ? triggerChildProps : ariaButtonTriggerChildProps)
};
};