carbon-react 154.4.2 → 154.5.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/esm/__internal__/input/input-presentation.style.d.ts +1 -1
- package/esm/__internal__/input/input.component.js +1 -1
- package/esm/components/action-popover/__internal__/action-popover.context.d.ts +1 -1
- package/esm/components/action-popover/action-popover-item/action-popover-item.component.d.ts +1 -15
- package/esm/components/action-popover/action-popover-item/action-popover-item.component.js +1 -1
- package/esm/components/action-popover/action-popover-menu/action-popover-menu.component.d.ts +0 -5
- package/esm/components/action-popover/action-popover-menu/action-popover-menu.component.js +1 -1
- package/esm/components/action-popover/action-popover.component.js +1 -1
- package/esm/components/action-popover/action-popover.style.d.ts +8 -15
- package/esm/components/action-popover/action-popover.style.js +1 -1
- package/esm/components/advanced-color-picker/advanced-color-picker.style.js +1 -1
- package/esm/components/simple-color-picker/simple-color/simple-color.style.js +1 -1
- package/lib/__internal__/input/input-presentation.style.d.ts +1 -1
- package/lib/__internal__/input/input.component.js +1 -1
- package/lib/components/action-popover/__internal__/action-popover.context.d.ts +1 -1
- package/lib/components/action-popover/action-popover-item/action-popover-item.component.d.ts +1 -15
- package/lib/components/action-popover/action-popover-item/action-popover-item.component.js +1 -1
- package/lib/components/action-popover/action-popover-menu/action-popover-menu.component.d.ts +0 -5
- package/lib/components/action-popover/action-popover-menu/action-popover-menu.component.js +1 -1
- package/lib/components/action-popover/action-popover.component.js +1 -1
- package/lib/components/action-popover/action-popover.style.d.ts +8 -15
- package/lib/components/action-popover/action-popover.style.js +1 -1
- package/lib/components/advanced-color-picker/advanced-color-picker.style.js +1 -1
- package/lib/components/simple-color-picker/simple-color/simple-color.style.js +1 -1
- package/package.json +23 -19
|
@@ -2,5 +2,5 @@ import { CommonInputPresentationProps } from "./input-presentation.component";
|
|
|
2
2
|
import { InputContextProps } from "../input-behaviour";
|
|
3
3
|
import { CarbonProviderProps } from "../../components/carbon-provider";
|
|
4
4
|
export declare const StyledInputPresentationContainer: import("styled-components").StyledComponent<"div", any, Pick<CommonInputPresentationProps, "maxWidth" | "inputWidth">, never>;
|
|
5
|
-
declare const InputPresentationStyle: import("styled-components").StyledComponent<"div", any, Pick<InputContextProps, "hasFocus"> & Pick<CommonInputPresentationProps, "disabled" | "error" | "info" | "warning" | "size" | "prefix" | "
|
|
5
|
+
declare const InputPresentationStyle: import("styled-components").StyledComponent<"div", any, Pick<InputContextProps, "hasFocus"> & Pick<CommonInputPresentationProps, "disabled" | "error" | "info" | "warning" | "size" | "prefix" | "readOnly" | "align" | "borderRadius" | "hasIcon" | "hideBorders"> & Pick<CarbonProviderProps, "validationRedesignOptIn">, never>;
|
|
6
6
|
export default InputPresentationStyle;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as e}from"react/jsx-runtime";import t,{useContext as r,useRef as n,useCallback as o,useEffect as i}from"react";import u from"./input.style.js";import{InputContext as c}from"../input-behaviour/input-behaviour.component.js";import{InputGroupContext as a}from"../input-behaviour/input-group-behaviour.component.js";import{SelectTextboxContext as l}from"../../components/select/__internal__/select-textbox/select-textbox.context.js";function s(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}const
|
|
1
|
+
import{jsx as e}from"react/jsx-runtime";import t,{useContext as r,useRef as n,useCallback as o,useEffect as i}from"react";import u from"./input.style.js";import{InputContext as c}from"../input-behaviour/input-behaviour.component.js";import{InputGroupContext as a}from"../input-behaviour/input-group-behaviour.component.js";import{SelectTextboxContext as l}from"../../components/select/__internal__/select-textbox/select-textbox.context.js";function s(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}const d=t.forwardRef(((t,d)=>{var{align:p,"aria-labelledby":b,"aria-describedby":f,ariaDescribedBy:y,placeholder:m,disabled:O,readOnly:h,autoFocus:g,onClick:v,onChangeDeferred:j,onChange:B,onBlur:P,onFocus:w,deferTimeout:x,type:F="text",id:I,name:S,validationIconId:C,inputBorderRadius:D="borderRadius050",enterKeyHint:R}=t,k=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},i=Object.keys(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(t,["align","aria-labelledby","aria-describedby","ariaDescribedBy","placeholder","disabled","readOnly","autoFocus","onClick","onChangeDeferred","onChange","onBlur","onFocus","deferTimeout","type","id","name","validationIconId","inputBorderRadius","enterKeyHint"]);const E=r(c),T=r(a),{isInputInSelect:_}=r(l),H=n(null);let K=n(null);d&&"current"in d&&(K=d);const M=o((e=>{K.current=e,"function"==typeof d&&d(e),g&&e&&e.focus(),R&&e&&e.setAttribute("enterkeyhint",R)}),[g,d,R]);i((()=>{E.inputRef&&E.inputRef(K)}),[E,K]),i((()=>{O&&E.onBlur&&E.onBlur()}),[O,E]);const A=f||y?[f||y]:[];(E.hasFocus||T.hasFocus||E.hasMouseOver||T.hasMouseOver)&&C&&A.push(C);const N=A.length?A.filter(Boolean).join(" "):void 0;return e(u,(q=function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter((function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable})))),n.forEach((function(t){s(e,t,r[t])}))}return e}({},k),z={isInputInSelect:_,"data-has-autofocus":!!g||void 0,"aria-describedby":N,"aria-labelledby":b,align:p,placeholder:m,disabled:O,readOnly:h,name:S,type:F,id:I||S,ref:M,"data-element":"input",onFocus:e=>{w&&w(e),E.onFocus&&E.onFocus(),T.onFocus&&T.onFocus(),"text"===F&&function(e){setTimeout((()=>{if(null==e?void 0:e.current){const{selectionStart:t,selectionEnd:r,value:n}=e.current,{length:o}=n;(0===t&&0===r||t===o&&r===o)&&document.activeElement===e.current&&e.current.setSelectionRange(0,o)}}))}(K)},onBlur:e=>{P&&P(e),E.onBlur&&E.onBlur(),T.onBlur&&T.onBlur()},onClick:O||h?void 0:e=>{var t;v&&v(e),null==K||null===(t=K.current)||void 0===t||t.focus()},onChange:e=>{B&&B(e),(e=>{j&&(H.current&&clearTimeout(H.current),H.current=setTimeout((()=>{j(e)}),x||750))})(e)},inputBorderRadius:D},z=null!=z?z:{},Object.getOwnPropertyDescriptors?Object.defineProperties(q,Object.getOwnPropertyDescriptors(z)):function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t.push.apply(t,r)}return t}(Object(z)).forEach((function(e){Object.defineProperty(q,e,Object.getOwnPropertyDescriptor(z,e))})),q));var q,z}));d.displayName="Input";export{d as default};
|
|
@@ -3,8 +3,8 @@ export type Alignment = "left" | "right";
|
|
|
3
3
|
type ActionPopoverContextType = {
|
|
4
4
|
setOpenPopover: (isOpen: boolean) => void;
|
|
5
5
|
focusButton: () => void;
|
|
6
|
+
horizontalAlignment: Alignment;
|
|
6
7
|
submenuPosition: Alignment;
|
|
7
|
-
isOpenPopover: boolean;
|
|
8
8
|
};
|
|
9
9
|
export declare const ActionPopoverProvider: import("react").Provider<ActionPopoverContextType | null>;
|
|
10
10
|
export declare const useActionPopoverContext: () => ActionPopoverContextType;
|
package/esm/components/action-popover/action-popover-item/action-popover-item.component.d.ts
CHANGED
|
@@ -17,28 +17,14 @@ export interface ActionPopoverItemProps {
|
|
|
17
17
|
/** Submenu component for item */
|
|
18
18
|
submenu?: React.ReactNode;
|
|
19
19
|
/** @ignore @private */
|
|
20
|
-
placement?: "top" | "bottom";
|
|
21
|
-
/** @ignore @private */
|
|
22
20
|
focusItem?: boolean;
|
|
23
21
|
/** @ignore @private */
|
|
24
|
-
horizontalAlignment?: Alignment;
|
|
25
|
-
/** @ignore @private */
|
|
26
|
-
childHasSubmenu?: boolean;
|
|
27
|
-
/** @ignore @private */
|
|
28
|
-
childHasIcon?: boolean;
|
|
29
|
-
/** @ignore @private */
|
|
30
22
|
currentSubmenuPosition?: Alignment;
|
|
31
23
|
/** @ignore @private */
|
|
32
|
-
setChildHasSubmenu?: (value: boolean) => void;
|
|
33
|
-
/** @ignore @private */
|
|
34
|
-
setChildHasIcon?: (value: boolean) => void;
|
|
35
|
-
/** @ignore @private */
|
|
36
24
|
setCurrentSubmenuPosition?: (value: Alignment) => void;
|
|
37
|
-
/** @ignore @private */
|
|
38
|
-
isASubmenu?: boolean;
|
|
39
25
|
}
|
|
40
26
|
export declare const ActionPopoverItem: {
|
|
41
|
-
({ children, icon, disabled, onClick: onClickProp, submenu,
|
|
27
|
+
({ children, icon, disabled, onClick: onClickProp, submenu, focusItem, download, href, currentSubmenuPosition, setCurrentSubmenuPosition, ...rest }: ActionPopoverItemProps): React.JSX.Element;
|
|
42
28
|
displayName: string;
|
|
43
29
|
};
|
|
44
30
|
export default ActionPopoverItem;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{jsxs as e,jsx as t}from"react/jsx-runtime";import n,{useState as r,useRef as o,useCallback as i,useEffect as u}from"react";import c from"invariant";import{StyledMenuItemWrapper as a,StyledMenuItem as l,SubMenuItemIcon as s,MenuItemIcon as p,StyledMenuItemInnerText as f}from"../action-popover.style.js";import m from"../../../__internal__/utils/helpers/events/events.js";import d from"../../../__internal__/utils/helpers/guid/index.js";import{useActionPopoverContext as v}from"../__internal__/action-popover.context.js";import b from"../action-popover-menu/action-popover-menu.component.js";function y(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function h(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter((function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable})))),r.forEach((function(t){y(e,t,n[t])}))}return e}function P(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t.push.apply(t,n)}return t}(Object(t)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})),e}function g(e){return Boolean(e&&e.current)}const O=y=>{var{children:O,icon:j,disabled:w=!1,onClick:_,submenu:D,focusItem:E,download:x,href:I,currentSubmenuPosition:S,setCurrentSubmenuPosition:k}=y,K=function(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},i=Object.keys(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}(y,["children","icon","disabled","onClick","submenu","focusItem","download","href","currentSubmenuPosition","setCurrentSubmenuPosition"]);c(!n.isValidElement(D)||D.type===b,"ActionPopoverItem only accepts submenu of type `ActionPopoverMenu`");const{setOpenPopover:C,focusButton:T,submenuPosition:A}=v(),L=!!I,[M,B]=r(void 0),[R]=r(d()),[W,$]=r(!1),[V,z]=r(0),F=o(null),N=o(null),q=o(null),G=o(null),H=i((()=>{const e=function(e,t,n,r){if(!e.current||!t.current)return r||n;const{left:o,right:i}=e.current.getBoundingClientRect(),{offsetWidth:u}=t.current,c=document.body.clientWidth;return"left"===n?o>=u?"left":"right":c>=i+u?"right":"left"}(N,F,A,S);return null==k||k(e),g(N)&&g(F)&&D}),[D,k,A,S]);u((()=>{B((()=>{if(!N.current||!F.current)return;const{offsetWidth:e}=F.current,t="left"===S;return{left:t?-e:"auto",right:t?"auto":-e}}))}),[D,S]),u((()=>{D&&H()}),[H,D]),u((()=>{E&&setTimeout((()=>{var e;null===(e=N.current)||void 0===e||e.focus()}),0)}),[E]),u((()=>function(){q.current&&clearTimeout(q.current),G.current&&clearTimeout(G.current)}),[]),u((()=>{const e="resize";return window.addEventListener(e,H),function(){window.removeEventListener(e,H)}}),[H]);const J=i((e=>{var t;e.stopPropagation(),w?(null===(t=N.current)||void 0===t||t.focus(),e.preventDefault()):(C(!1),T(),_&&_(e))}),[w,T,_,C]),Q=i((e=>{if(m.isSpaceKey(e))e.preventDefault(),e.stopPropagation();else if(w)m.isEnterKey(e)&&e.stopPropagation();else if(D){var t;if("left"===S){if(m.isLeftKey(e)||m.isEnterKey(e))$(!0),z(0),e.stopPropagation();else if(m.isRightKey(e)){var n;$(!1),null===(n=N.current)||void 0===n||n.focus(),e.stopPropagation()}}else(m.isRightKey(e)||m.isEnterKey(e))&&($(!0),z(0),e.stopPropagation()),m.isLeftKey(e)&&($(!1),null===(t=N.current)||void 0===t||t.focus(),e.stopPropagation());e.preventDefault()}else if(m.isEnterKey(e)){var r;L&&x&&(null===(r=N.current)||void 0===r||r.click()),e.preventDefault(),J(e)}}),[w,x,L,J,D,S]),U=P(h({},!w&&{onClick:e=>{var t;$(!0),null===(t=N.current)||void 0===t||t.focus(),e.preventDefault(),e.stopPropagation()}}),{"aria-haspopup":"true","aria-controls":`ActionPopoverMenu_${R}`,"aria-expanded":W}),X=h({},!w&&{onMouseEnter:e=>{q.current&&clearTimeout(q.current),z(-1),q.current=setTimeout((()=>{$(!0)}),150),e.stopPropagation()},onMouseLeave:e=>{G.current&&clearTimeout(G.current),G.current=setTimeout((()=>{$(!1)}),150),e.stopPropagation()}});return e(a,P(h({onKeyDown:Q},D&&X),{children:[e(l,P(h(P(h({},K),{ref:N,onClick:J,type:"button",tabIndex:0,isDisabled:w}),w&&{"aria-disabled":!0},L&&{as:"a",download:x,href:I},D&&U),{children:[D&&g(N)&&t(s,{"aria-hidden":!0,"data-element":"action-popover-menu-item-chevron","data-role":"chevron-icon",type:"left"===S?"chevron_left_thick":"chevron_right_thick"}),j&&t(p,{"aria-hidden":!0,type:j,"data-element":"action-popover-menu-item-icon","data-role":"item-icon"}),t(f,{"data-element":"action-popover-menu-item-inner-text",children:O})]})),n.isValidElement(D)?n.cloneElement(D,{parentID:`ActionPopoverItem_${R}`,menuID:`ActionPopoverMenu_${R}`,"data-element":"action-popover-submenu",isOpen:W,ref:F,style:M,setOpen:$,setFocusIndex:z,focusIndex:V}):null]}))};O.displayName="ActionPopoverItem";export{O as ActionPopoverItem,O as default};
|
package/esm/components/action-popover/action-popover-menu/action-popover-menu.component.d.ts
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
import { Alignment } from "../__internal__/action-popover.context";
|
|
3
2
|
export interface ActionPopoverMenuBaseProps {
|
|
4
3
|
/** Children for the menu */
|
|
5
4
|
children?: React.ReactNode;
|
|
@@ -23,15 +22,11 @@ export interface ActionPopoverMenuBaseProps {
|
|
|
23
22
|
setOpen?: (args: boolean) => void;
|
|
24
23
|
/** Unique ID for the menu's parent */
|
|
25
24
|
parentID?: string;
|
|
26
|
-
/** Horizontal alignment of menu items content */
|
|
27
|
-
horizontalAlignment?: Alignment;
|
|
28
25
|
/** Set whether the menu should open above or below the button */
|
|
29
26
|
placement?: "bottom" | "top";
|
|
30
27
|
/** @ignore @private */
|
|
31
28
|
role?: string;
|
|
32
29
|
/** @ignore @private */
|
|
33
|
-
isASubmenu?: boolean;
|
|
34
|
-
/** @ignore @private */
|
|
35
30
|
"data-element"?: string;
|
|
36
31
|
/** @ignore @private */
|
|
37
32
|
style?: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as e}from"react/jsx-runtime";import t,{useMemo as o,useCallback as n,useState as r}from"react";import i from"invariant";import{MenuItemDivider as p,Menu as
|
|
1
|
+
import{jsx as e}from"react/jsx-runtime";import t,{useMemo as o,useCallback as n,useState as r}from"react";import i from"invariant";import{MenuItemDivider as p,Menu as a}from"../action-popover.style.js";import s from"../../../__internal__/utils/helpers/events/events.js";import{ActionPopoverItem as l}from"../action-popover-item/action-popover-item.component.js";import"../action-popover-divider/action-popover-divider.component.js";import{useActionPopoverContext as c}from"../__internal__/action-popover.context.js";import{getItems as u,isItemDisabled as f,findFirstFocusableItem as m,findLastFocusableItem as y}from"../__internal__/action-popover.utils.js";function d(e,t,o){return t in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o,e}const v=t.forwardRef(((v,b)=>{var{children:O,parentID:P,focusIndex:j,isOpen:g,menuID:h,setOpen:w,setFocusIndex:D,placement:I="bottom"}=v,_=function(e,t){if(null==e)return{};var o,n,r=function(e,t){if(null==e)return{};var o,n,r={},i=Object.keys(e);for(n=0;n<i.length;n++)o=i[n],t.indexOf(o)>=0||(r[o]=e[o]);return r}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)o=i[n],t.indexOf(o)>=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(r[o]=e[o])}return r}(v,["children","parentID","focusIndex","isOpen","menuID","setOpen","setFocusIndex","placement"]);const{focusButton:x,submenuPosition:A,horizontalAlignment:E}=c();i(w&&D&&void 0!==j,"ActionPopoverMenu must be used within an ActionPopover or ActionPopoverItem component");const S=o((()=>!t.Children.toArray(O).find((e=>!t.isValidElement(e)||"ActionPopoverItem"!==e.type.displayName&&"ActionPopoverDivider"!==e.type.displayName))),[O]);i(S,`ActionPopoverMenu only accepts children of type \`${l.displayName}\` and \`${p.displayName}\`.`);const K=o((()=>u(O)),[O]),k=n((e=>f(K[e])),[K]),C=m(K),N=y(K),L=n((e=>{if(s.isTabKey(e))e.preventDefault(),x(),w(!1);else if(s.isDownKey(e)){e.preventDefault(),e.stopPropagation();let t=j+1;for(;t<K.length&&k(t);)t+=1;t>=K.length&&(t=C),D(t)}else if(s.isUpKey(e)){e.preventDefault(),e.stopPropagation();let t=j-1;for(;t>=C&&k(t);)t-=1;t<C&&(t=N),D(t)}else if(s.isHomeKey(e))e.preventDefault(),e.stopPropagation(),D(C);else if(s.isEndKey(e))e.preventDefault(),e.stopPropagation(),D(N);else if(1===e.key.length){let o,n;e.stopPropagation(),K.forEach(((r,i)=>{t.isValidElement(r)&&!k(i)&&r.props.children.toLowerCase().startsWith(e.key.toLowerCase())&&(void 0===o&&(o=i),i>j&&void 0===n&&(n=i))})),void 0!==n?D(n):void 0!==o&&D(o)}}),[x,w,j,K,k,D,C,N]),[M,V]=r(A),F=o((()=>{let e=0;return t.Children.map(O,(o=>t.isValidElement(o)&&o.type===l?(e+=1,t.cloneElement(o,{focusItem:g&&j===e-1,currentSubmenuPosition:M,setCurrentSubmenuPosition:V})):o))}),[O,j,g,M]);return e(a,($=function(e){for(var t=1;t<arguments.length;t++){var o=null!=arguments[t]?arguments[t]:{},n=Object.keys(o);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(o).filter((function(e){return Object.getOwnPropertyDescriptor(o,e).enumerable})))),n.forEach((function(t){d(e,t,o[t])}))}return e}({"data-component":"action-popover","data-submenu-placement":I,isOpen:!!g,onKeyDown:L,id:h,"aria-labelledby":P,ref:b,role:"list",submenuLeft:"left"===M,iconLeft:"left"===E},_),z=null!=(z={children:F})?z:{},Object.getOwnPropertyDescriptors?Object.defineProperties($,Object.getOwnPropertyDescriptors(z)):function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t.push.apply(t,o)}return t}(Object(z)).forEach((function(e){Object.defineProperty($,e,Object.getOwnPropertyDescriptor(z,e))})),$));var $,z}));v.displayName="ActionPopoverMenu";export{v as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsxs as e,jsx as t}from"react/jsx-runtime";import o,{forwardRef as r,useState as n,useRef as a,useContext as i,useMemo as l,useCallback as p,useImperativeHandle as c,useEffect as s}from"react";import u from"invariant";import d from"../../__internal__/utils/helpers/tags/tags.js";import{MenuItemDivider as b,MenuButton as m,StyledButtonIcon as f,ButtonIcon as v}from"./action-popover.style.js";import y from"../../__internal__/utils/helpers/events/events.js";import _ from"../../__internal__/popover/popover.component.js";import O from"../../__internal__/utils/helpers/guid/index.js";import
|
|
1
|
+
import{jsxs as e,jsx as t}from"react/jsx-runtime";import o,{forwardRef as r,useState as n,useRef as a,useContext as i,useMemo as l,useCallback as p,useImperativeHandle as c,useEffect as s}from"react";import u from"invariant";import d from"../../__internal__/utils/helpers/tags/tags.js";import{MenuItemDivider as b,MenuButton as m,StyledButtonIcon as f,ButtonIcon as v}from"./action-popover.style.js";import y from"../../__internal__/utils/helpers/events/events.js";import _ from"../../__internal__/popover/popover.component.js";import O from"../../__internal__/utils/helpers/guid/index.js";import j from"../../hooks/__internal__/useLocale/useLocale.js";import g from"./action-popover-menu/action-popover-menu.component.js";import{ActionPopoverItem as h}from"./action-popover-item/action-popover-item.component.js";import"./action-popover-divider/action-popover-divider.component.js";import{ActionPopoverProvider as P}from"./__internal__/action-popover.context.js";import x from"../../hooks/__internal__/useModalManager/useModalManager.js";import{getItems as w,findFirstFocusableItem as A,findLastFocusableItem as D,checkChildrenForString as I}from"./__internal__/action-popover.utils.js";import k from"../flat-table/__internal__/flat-table.context.js";function E(e,t,o){return t in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o,e}const M=()=>{},S=()=>{},L=r(((r,L)=>{var{children:B,id:K,onOpen:$=M,onClose:C=S,rightAlignMenu:z,renderButton:F,placement:N="bottom",horizontalAlignment:U="left",submenuPosition:q="left","aria-label":R,"aria-labelledby":T,"aria-describedby":V}=r,G=function(e,t){if(null==e)return{};var o,r,n=function(e,t){if(null==e)return{};var o,r,n={},a=Object.keys(e);for(r=0;r<a.length;r++)o=a[r],t.indexOf(o)>=0||(n[o]=e[o]);return n}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r<a.length;r++)o=a[r],t.indexOf(o)>=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(n[o]=e[o])}return n}(r,["children","id","onOpen","onClose","rightAlignMenu","renderButton","placement","horizontalAlignment","submenuPosition","aria-label","aria-labelledby","aria-describedby"]);const H=j(),[J,Q]=n(!1),[W,X]=n(0),[Y]=n(O()),Z=a(null),ee=a(null),{isInFlatTable:te}=i(k),oe=l((()=>!o.Children.toArray(B).find((e=>!o.isValidElement(e)||e.type!==h&&e.type!==b))),[B]),re=l((()=>w(B)),[B]),ne=A(re),ae=D(re);u(oe,`ActionPopover only accepts children of type \`${h.displayName}\` and \`${b.displayName}\`.`);const ie=l((()=>"top"!==N||z?"top"===N&&z?"top-start":"bottom"===N&&z?"bottom-start":"bottom-end":"top-end"),[N,z]),le=p((e=>{e&&!J&&$(),!e&&J&&C(),Q(e)}),[J,$,C]),pe=p((()=>{var e;const t=null===(e=Z.current)||void 0===e?void 0:e.querySelector("[data-element='action-popover-button']");null==t||t.focus()}),[]);c(L,(()=>({focusButton(){pe()}})),[pe]);const ce=p((e=>{e.stopPropagation();const t=!J;X(ne),le(t),t||pe()}),[J,ne,le,pe]),se=p((e=>{y.isSpaceKey(e)||y.isDownKey(e)||y.isEnterKey(e)?(e.preventDefault(),e.stopPropagation(),X(ne),le(!0)):y.isUpKey(e)&&(e.preventDefault(),e.stopPropagation(),X(ae),le(!0))}),[ne,ae,le]),ue=p((e=>{y.isEscKey(e)&&(le(!1),pe())}),[le,pe]);x({open:J,closeModal:ue,modalRef:Z}),s((()=>{const e=({target:e})=>{var t,o;const r=null==ee||null===(t=ee.current)||void 0===t?void 0:t.contains(e),n=null==Z||null===(o=Z.current)||void 0===o?void 0:o.contains(e);r||n||le(!1)},t="click";return document.addEventListener(t,e,{capture:!0}),function(){document.removeEventListener(t,e,{capture:!0})}}),[le]);const de=K||`ActionPopoverButton_${Y}`,be=`ActionPopoverMenu_${Y}`;return e(m,(me=function(e){for(var t=1;t<arguments.length;t++){var o=null!=arguments[t]?arguments[t]:{},r=Object.keys(o);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(o).filter((function(e){return Object.getOwnPropertyDescriptor(o,e).enumerable})))),r.forEach((function(t){E(e,t,o[t])}))}return e}({id:de,onKeyDown:se,onClick:ce,isOpen:J,ref:Z},G,d("action-popover-wrapper",G)),fe=null!=(fe={children:[(e=>{if(F){const t=F({tabIndex:J?-1:0,"data-element":"action-popover-button",ariaAttributes:{"aria-haspopup":"true","aria-label":R||H.actionPopover.ariaLabel(),"aria-labelledby":T,"aria-describedby":V,"aria-controls":e,"aria-expanded":`${J}`}}),o=I(t);return F({tabIndex:J?-1:0,"data-element":"action-popover-button",ariaAttributes:{"aria-haspopup":"true","aria-label":o?void 0:R||H.actionPopover.ariaLabel(),"aria-labelledby":T,"aria-describedby":V,"aria-controls":e,"aria-expanded":`${J}`}})}return t(f,{role:"button","aria-haspopup":"true","aria-label":R||H.actionPopover.ariaLabel(),"aria-labelledby":T,"aria-describedby":V,"aria-controls":e,"aria-expanded":J,tabIndex:J?-1:0,"data-element":"action-popover-button",children:t(v,{type:"ellipsis_vertical"})})})(be),t(P,{value:{setOpenPopover:le,focusButton:pe,submenuPosition:q,horizontalAlignment:U},children:J&&t(_,{placement:ie,reference:Z,disableBackgroundUI:te,children:t(g,{"data-component":"action-popover",ref:ee,parentID:de,menuID:be,focusIndex:W,setFocusIndex:X,isOpen:J,setOpen:le,placement:N,children:B})})})]})?fe:{},Object.getOwnPropertyDescriptors?Object.defineProperties(me,Object.getOwnPropertyDescriptors(fe)):function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t.push.apply(t,o)}return t}(Object(fe)).forEach((function(e){Object.defineProperty(me,e,Object.getOwnPropertyDescriptor(fe,e))})),me));var me,fe}));export{L as ActionPopover,L as default};
|
|
@@ -1,20 +1,13 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
declare const Menu: import("styled-components").StyledComponent<"ul", any, {
|
|
3
|
-
isOpen
|
|
3
|
+
isOpen: boolean;
|
|
4
|
+
submenuLeft: boolean;
|
|
5
|
+
iconLeft: boolean;
|
|
4
6
|
}, never>;
|
|
5
|
-
|
|
7
|
+
declare const StyledMenuItemInnerText: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
8
|
+
declare const StyledMenuItem: import("styled-components").StyledComponent<"button", any, {
|
|
6
9
|
isDisabled: boolean;
|
|
7
|
-
|
|
8
|
-
submenuPosition?: "left" | "right";
|
|
9
|
-
childHasSubmenu?: boolean;
|
|
10
|
-
childHasIcon?: boolean;
|
|
11
|
-
hasSubmenu?: boolean;
|
|
12
|
-
hasIcon?: boolean;
|
|
13
|
-
isASubmenu?: boolean;
|
|
14
|
-
};
|
|
15
|
-
declare const StyledMenuItemInnerText: import("styled-components").StyledComponent<"div", any, Omit<StyledMenuItemProps, "isDisabled">, never>;
|
|
16
|
-
declare const StyledMenuItemOuterContainer: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
17
|
-
declare const StyledMenuItem: import("styled-components").StyledComponent<"button", any, Omit<StyledMenuItemProps, "variant">, never>;
|
|
10
|
+
}, never>;
|
|
18
11
|
declare const StyledMenuItemWrapper: import("styled-components").StyledComponent<"li", any, {}, never>;
|
|
19
12
|
declare const MenuItemDivider: import("styled-components").StyledComponent<"li", any, {
|
|
20
13
|
"data-element": string;
|
|
@@ -22,7 +15,7 @@ declare const MenuItemDivider: import("styled-components").StyledComponent<"li",
|
|
|
22
15
|
declare const MenuButton: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
23
16
|
declare const ButtonIcon: import("styled-components").StyledComponent<import("react").ForwardRefExoticComponent<import("../icon").IconProps & import("react").RefAttributes<HTMLSpanElement>>, any, {}, never>;
|
|
24
17
|
declare const StyledButtonIcon: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
25
|
-
declare const MenuItemIcon: import("styled-components").StyledComponent<import("react").ForwardRefExoticComponent<import("../icon").IconProps & import("react").RefAttributes<HTMLSpanElement>>, any,
|
|
18
|
+
declare const MenuItemIcon: import("styled-components").StyledComponent<import("react").ForwardRefExoticComponent<import("../icon").IconProps & import("react").RefAttributes<HTMLSpanElement>>, any, {}, never>;
|
|
26
19
|
declare const SubMenuItemIcon: import("styled-components").StyledComponent<import("react").ForwardRefExoticComponent<import("../icon").IconProps & import("react").RefAttributes<HTMLSpanElement>>, any, {}, never>;
|
|
27
20
|
declare const MenuButtonOverrideWrapper: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
28
|
-
export { Menu, MenuButton, ButtonIcon, StyledButtonIcon, MenuItemIcon, MenuItemDivider, SubMenuItemIcon, MenuButtonOverrideWrapper, StyledMenuItemInnerText,
|
|
21
|
+
export { Menu, MenuButton, ButtonIcon, StyledButtonIcon, MenuItemIcon, MenuItemDivider, SubMenuItemIcon, MenuButtonOverrideWrapper, StyledMenuItemInnerText, StyledMenuItem, StyledMenuItemWrapper, };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import o,{css as
|
|
1
|
+
import o,{css as t}from"styled-components";import{margin as i}from"styled-system";import n from"../icon/icon.component.js";import e from"../icon/icon.style.js";import r from"../button/button.style.js";import c from"../../style/utils/add-focus-styling.js";import a from"../../style/themes/base/index.js";const s=o.ul.withConfig({displayName:"action-popover.style__Menu",componentId:"sc-2ca14dc-0"})(["visibility:",";display:grid;"," align-items:center;min-width:fit-content;text-align:",";justify-content:",";margin:0;list-style:none;padding:var(--spacing100) 0;box-shadow:var(--boxShadow100);position:absolute;border-radius:var(--borderRadius100);background-color:var(--colorsUtilityYang100);z-index:",';&[data-submenu-placement="top"] &{bottom:calc(-1 * var(--spacing100));top:auto;}&[data-submenu-placement="bottom"] &{top:calc(-1 * var(--spacing100));bottom:auto;}'],(({isOpen:o})=>o?"visible":"hidden"),(({submenuLeft:o,iconLeft:i})=>{const n="[chevron_column] auto",e="[icon_column] auto",r="[text_column] auto";return t(["grid-template-columns:"," "," ",";"],o?n:"",i?`${e} ${r}`:`${r} ${e}`,o?"":n)}),(({iconLeft:o})=>o?"left":"right"),(({iconLeft:o})=>o?"left":"right"),(({theme:o})=>{var t;return`${null===(t=o.zIndex)||void 0===t?void 0:t.popover}`})),l=o.div.withConfig({displayName:"action-popover.style__StyledMenuItemInnerText",componentId:"sc-2ca14dc-1"})(["grid-column:text_column;&:only-child{padding:0;}padding:0 var(--spacing100);"]),d=o.button.withConfig({displayName:"action-popover.style__StyledMenuItem",componentId:"sc-2ca14dc-2"})(["display:grid;grid-template-columns:subgrid;grid-template-rows:subgrid;grid-column:span 3;align-items:inherit;text-align:inherit;justify-content:inherit;text-decoration:none;background-color:var(--colorsActionMajorYang100);cursor:pointer;box-sizing:border-box;padding:0 var(--spacing150);position:relative;line-height:40px;white-space:nowrap;user-select:none;border:none;color:var(--colorsUtilityYin090);font-size:14px;font-weight:500;&:focus{"," z-index:1;border-radius:var(--borderRadius000);}"," ",""],c(),(({isDisabled:o})=>o&&t(["color:var(--colorsUtilityYin030);cursor:not-allowed;&& ","{cursor:not-allowed;color:var(--colorsUtilityYin030);}:focus{border:none;outline:none;-webkit-appearance:none;-webkit-box-shadow:none;box-shadow:none;}"],e)),(({isDisabled:o})=>!o&&t(["&:focus,&:hover{background-color:var(--colorsUtilityMajor100);}&& ","{cursor:pointer;}"],e)));d.defaultProps={theme:a};const p=o.li.withConfig({displayName:"action-popover.style__StyledMenuItemWrapper",componentId:"sc-2ca14dc-3"})(["display:grid;grid-template-columns:subgrid;grid-template-rows:subgrid;grid-column:span 3;text-align:inherit;align-items:inherit;justify-content:inherit;position:relative;"]),m=o.li.attrs({"data-element":"action-popover-divider"}).withConfig({displayName:"action-popover.style__MenuItemDivider",componentId:"sc-2ca14dc-4"})(["grid-column:span 3;background-color:var(--colorsUtilityMajor050);height:var(--borderWidth100);margin:var(--spacing100) var(--spacing150);"]),u=o.div.withConfig({displayName:"action-popover.style__MenuButton",componentId:"sc-2ca14dc-5"})(["position:relative;&& ","{cursor:pointer;}width:fit-content;margin:auto;",""],e,i),g=o(n).withConfig({displayName:"action-popover.style__ButtonIcon",componentId:"sc-2ca14dc-6"})(["color:var(--colorsActionMinor500);:hover{color:var(--colorsActionMinor600);}"]),v=o.div.withConfig({displayName:"action-popover.style__StyledButtonIcon",componentId:"sc-2ca14dc-7"})(["&:focus{","}border-radius:var(--borderRadius050);"],c()),y=o(n).withConfig({displayName:"action-popover.style__MenuItemIcon",componentId:"sc-2ca14dc-8"})(["justify-content:inherit;grid-column:icon_column;padding:var(--spacing100);color:var(--colorsUtilityYin065);"]);v.defaultProps={theme:a};const h=o(g).withConfig({displayName:"action-popover.style__SubMenuItemIcon",componentId:"sc-2ca14dc-9"})(["grid-column:chevron_column;",""],(({type:o})=>t([""," ",""],"chevron_left_thick"===o&&t(["left:-5px;"]),"chevron_right_thick"===o&&t(["right:-5px;"])))),b=o.div.withConfig({displayName:"action-popover.style__MenuButtonOverrideWrapper",componentId:"sc-2ca14dc-10"})(["","{padding:0px var(--sizing100);width:100%;&:hover,&:focus{background-color:var(--colorsActionMajorTransparent);color:var(--colorsActionMajor600);span[color]{color:var(--colorsActionMajor600);}}}"],r);export{g as ButtonIcon,s as Menu,u as MenuButton,b as MenuButtonOverrideWrapper,m as MenuItemDivider,y as MenuItemIcon,v as StyledButtonIcon,d as StyledMenuItem,l as StyledMenuItemInnerText,p as StyledMenuItemWrapper,h as SubMenuItemIcon};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import o,{css as r}from"styled-components";import{margin as e}from"styled-system";export{default as StyledAdvancedColorPickerCell}from"./advanced-color-picker-cell.style.js";import{StyledColorOptions as i}from"../simple-color-picker/simple-color-picker.style.js";import{StyledSimpleColor as t}from"../simple-color-picker/simple-color/simple-color.style.js";import{StyledDialogContent as l}from"../dialog/dialog.style.js";import{Dialog as d}from"../dialog/dialog.component.js";import n from"../icon-button/icon-button.style.js";import s from"../simple-color-picker/simple-color/checker-board.svg";import c from"../../style/themes/base/index.js";import
|
|
1
|
+
import o,{css as r}from"styled-components";import{margin as e}from"styled-system";export{default as StyledAdvancedColorPickerCell}from"./advanced-color-picker-cell.style.js";import{StyledColorOptions as i}from"../simple-color-picker/simple-color-picker.style.js";import{StyledSimpleColor as t}from"../simple-color-picker/simple-color/simple-color.style.js";import{StyledDialogContent as l}from"../dialog/dialog.style.js";import{Dialog as d}from"../dialog/dialog.component.js";import n from"../icon-button/icon-button.style.js";import s from"../simple-color-picker/simple-color/checker-board.svg";import c from"../../style/themes/base/index.js";import a from"../../style/utils/visually-hidden.js";import p from"../definition-list/dl.component.js";import"../definition-list/dt/dt.component.js";import"../definition-list/dd/dd.component.js";const m=o.div.withConfig({displayName:"advanced-color-picker.style__StyledAdvancedColorPickerWrapper",componentId:"sc-a027d762-0"})([""," display:inline-block;"],e),y=o(p).withConfig({displayName:"advanced-color-picker.style__HiddenCurrentColorList",componentId:"sc-a027d762-1"})(["",""],a);m.defaultProps={theme:c};const g=o.div.withConfig({displayName:"advanced-color-picker.style__StyledAdvancedColorPickerPreview",componentId:"sc-a027d762-2"})(["width:25px;height:25px;margin-bottom:15px;border:1px solid var(--colorsUtilityYin090);border-radius:var(--borderRadius050);"," "," &:hover{cursor:initial;}"],(({color:o})=>"transparent"!==o&&r(["background-color:",";"],o)),(({color:o})=>"transparent"===o&&r(['background-color:#eeeeee;background-image:url("','");background-size:10px 10px;'],s))),f=o(d).withConfig({displayName:"advanced-color-picker.style__DialogStyle",componentId:"sc-a027d762-3"})(["","{padding:var(--spacing200);}","{max-width:285px;","{border:1px solid var(--colorsUtilityYin090);margin-right:-1px;margin-bottom:-1px;transition:all 0.2s ease;&:hover{transform:scale(1.1);}}}","{border:none;}",'{top:20px;right:13px;}[data-component="icon"]{color:var(--colorsActionMinor500);}'],l,i,t,i,n);export{f as DialogStyle,y as HiddenCurrentColorList,g as StyledAdvancedColorPickerPreview,m as StyledAdvancedColorPickerWrapper};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import o,{css as t}from"styled-components";import i from"../../../__internal__/input/input.component.js";import"react/jsx-runtime";import"react";import"../../../__internal__/input/input-presentation.style.js";import"../../carbon-provider/__internal__/new-validation.context.js";import
|
|
1
|
+
import o,{css as t}from"styled-components";import i from"../../../__internal__/input/input.component.js";import"react/jsx-runtime";import"react";import"../../../__internal__/input/input-presentation.style.js";import"../../carbon-provider/__internal__/new-validation.context.js";import r from"./checker-board.svg";import e from"../../icon/icon.component.js";import n from"../../../style/utils/get-rgb-values.js";import s from"../../../style/utils/add-focus-styling.js";const l=o.div.withConfig({displayName:"simple-color.style__StyledSimpleColor",componentId:"sc-b2f24669-0"})(["width:var(--sizing700);height:var(--sizing700);margin-right:2px;margin-bottom:2px;&:hover{cursor:pointer;}"]),p=o.div.withConfig({displayName:"simple-color.style__StyledColorSampleBox",componentId:"sc-b2f24669-1"})(["height:100%;width:100%;box-sizing:border-box;display:flex;align-items:center;justify-content:center;"," ",""],(({color:o})=>"transparent"!==o&&t(["background-color:",";"],o)),(({color:o})=>"transparent"===o&&t(['background-color:#eeeeee;background-image:url("','");background-size:14px 14px;background-position:-2px -2px;'],r))),a=o(i).withConfig({displayName:"simple-color.style__StyledSimpleColorInput",componentId:"sc-b2f24669-2"})(["position:absolute;opacity:0;height:var(--sizing700);width:var(--sizing700);margin:0;&:hover{cursor:pointer;}&:disabled:hover{cursor:not-allowed;}&:focus + ","{","}"],p,s(!0)),c=o(e).withConfig({displayName:"simple-color.style__StyledTickIcon",componentId:"sc-b2f24669-3"})(["height:20px;width:20px;pointer-events:none;display:block;&::before{font-size:20px;color:",";}"],(({color:o})=>(o=>{const t=n(o),[i,r,e]=t;return(Math.round(299*i)+Math.round(587*r)+Math.round(114*e))/1e3<128?"var(--colorsUtilityYang100)":"var(--colorsUtilityYin090)"})(o)));export{p as StyledColorSampleBox,l as StyledSimpleColor,a as StyledSimpleColorInput,c as StyledTickIcon};
|
|
@@ -2,5 +2,5 @@ import { CommonInputPresentationProps } from "./input-presentation.component";
|
|
|
2
2
|
import { InputContextProps } from "../input-behaviour";
|
|
3
3
|
import { CarbonProviderProps } from "../../components/carbon-provider";
|
|
4
4
|
export declare const StyledInputPresentationContainer: import("styled-components").StyledComponent<"div", any, Pick<CommonInputPresentationProps, "maxWidth" | "inputWidth">, never>;
|
|
5
|
-
declare const InputPresentationStyle: import("styled-components").StyledComponent<"div", any, Pick<InputContextProps, "hasFocus"> & Pick<CommonInputPresentationProps, "disabled" | "error" | "info" | "warning" | "size" | "prefix" | "
|
|
5
|
+
declare const InputPresentationStyle: import("styled-components").StyledComponent<"div", any, Pick<InputContextProps, "hasFocus"> & Pick<CommonInputPresentationProps, "disabled" | "error" | "info" | "warning" | "size" | "prefix" | "readOnly" | "align" | "borderRadius" | "hasIcon" | "hideBorders"> & Pick<CarbonProviderProps, "validationRedesignOptIn">, never>;
|
|
6
6
|
export default InputPresentationStyle;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("react"),r=require("./input.style.js"),n=require("../input-behaviour/input-behaviour.component.js"),o=require("../input-behaviour/input-group-behaviour.component.js"),u=require("../../components/select/__internal__/select-textbox/select-textbox.context.js");function i(e){return e&&e.__esModule?e:{default:e}}function c(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}const l=i(t).default.forwardRef(((i,l)=>{var{align:a,"aria-labelledby":s,"aria-describedby":d,ariaDescribedBy:p,placeholder:b,disabled:f,readOnly:y,autoFocus:O,onClick:
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("react"),r=require("./input.style.js"),n=require("../input-behaviour/input-behaviour.component.js"),o=require("../input-behaviour/input-group-behaviour.component.js"),u=require("../../components/select/__internal__/select-textbox/select-textbox.context.js");function i(e){return e&&e.__esModule?e:{default:e}}function c(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}const l=i(t).default.forwardRef(((i,l)=>{var{align:a,"aria-labelledby":s,"aria-describedby":d,ariaDescribedBy:p,placeholder:b,disabled:f,readOnly:y,autoFocus:O,onClick:v,onChangeDeferred:h,onChange:g,onBlur:j,onFocus:m,deferTimeout:x,type:B="text",id:C,name:P,validationIconId:w,inputBorderRadius:I="borderRadius050",enterKeyHint:F}=i,S=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},u=Object.keys(e);for(n=0;n<u.length;n++)r=u[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var u=Object.getOwnPropertySymbols(e);for(n=0;n<u.length;n++)r=u[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(i,["align","aria-labelledby","aria-describedby","ariaDescribedBy","placeholder","disabled","readOnly","autoFocus","onClick","onChangeDeferred","onChange","onBlur","onFocus","deferTimeout","type","id","name","validationIconId","inputBorderRadius","enterKeyHint"]);const R=t.useContext(n.InputContext),k=t.useContext(o.InputGroupContext),{isInputInSelect:D}=t.useContext(u.SelectTextboxContext),_=t.useRef(null);let E=t.useRef(null);l&&"current"in l&&(E=l);const q=t.useCallback((e=>{E.current=e,"function"==typeof l&&l(e),O&&e&&e.focus(),F&&e&&e.setAttribute("enterkeyhint",F)}),[O,l,F]);t.useEffect((()=>{R.inputRef&&R.inputRef(E)}),[R,E]),t.useEffect((()=>{f&&R.onBlur&&R.onBlur()}),[f,R]);const T=d||p?[d||p]:[];(R.hasFocus||k.hasFocus||R.hasMouseOver||k.hasMouseOver)&&w&&T.push(w);const M=T.length?T.filter(Boolean).join(" "):void 0;return e.jsx(r.default,(H=function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter((function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable})))),n.forEach((function(t){c(e,t,r[t])}))}return e}({},S),K={isInputInSelect:D,"data-has-autofocus":!!O||void 0,"aria-describedby":M,"aria-labelledby":s,align:a,placeholder:b,disabled:f,readOnly:y,name:P,type:B,id:C||P,ref:q,"data-element":"input",onFocus:e=>{m&&m(e),R.onFocus&&R.onFocus(),k.onFocus&&k.onFocus(),"text"===B&&function(e){setTimeout((()=>{if(null==e?void 0:e.current){const{selectionStart:t,selectionEnd:r,value:n}=e.current,{length:o}=n;(0===t&&0===r||t===o&&r===o)&&document.activeElement===e.current&&e.current.setSelectionRange(0,o)}}))}(E)},onBlur:e=>{j&&j(e),R.onBlur&&R.onBlur(),k.onBlur&&k.onBlur()},onClick:f||y?void 0:e=>{var t;v&&v(e),null==E||null===(t=E.current)||void 0===t||t.focus()},onChange:e=>{g&&g(e),(e=>{h&&(_.current&&clearTimeout(_.current),_.current=setTimeout((()=>{h(e)}),x||750))})(e)},inputBorderRadius:I},K=null!=K?K:{},Object.getOwnPropertyDescriptors?Object.defineProperties(H,Object.getOwnPropertyDescriptors(K)):function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t.push.apply(t,r)}return t}(Object(K)).forEach((function(e){Object.defineProperty(H,e,Object.getOwnPropertyDescriptor(K,e))})),H));var H,K}));l.displayName="Input",exports.default=l;
|
|
@@ -3,8 +3,8 @@ export type Alignment = "left" | "right";
|
|
|
3
3
|
type ActionPopoverContextType = {
|
|
4
4
|
setOpenPopover: (isOpen: boolean) => void;
|
|
5
5
|
focusButton: () => void;
|
|
6
|
+
horizontalAlignment: Alignment;
|
|
6
7
|
submenuPosition: Alignment;
|
|
7
|
-
isOpenPopover: boolean;
|
|
8
8
|
};
|
|
9
9
|
export declare const ActionPopoverProvider: import("react").Provider<ActionPopoverContextType | null>;
|
|
10
10
|
export declare const useActionPopoverContext: () => ActionPopoverContextType;
|
package/lib/components/action-popover/action-popover-item/action-popover-item.component.d.ts
CHANGED
|
@@ -17,28 +17,14 @@ export interface ActionPopoverItemProps {
|
|
|
17
17
|
/** Submenu component for item */
|
|
18
18
|
submenu?: React.ReactNode;
|
|
19
19
|
/** @ignore @private */
|
|
20
|
-
placement?: "top" | "bottom";
|
|
21
|
-
/** @ignore @private */
|
|
22
20
|
focusItem?: boolean;
|
|
23
21
|
/** @ignore @private */
|
|
24
|
-
horizontalAlignment?: Alignment;
|
|
25
|
-
/** @ignore @private */
|
|
26
|
-
childHasSubmenu?: boolean;
|
|
27
|
-
/** @ignore @private */
|
|
28
|
-
childHasIcon?: boolean;
|
|
29
|
-
/** @ignore @private */
|
|
30
22
|
currentSubmenuPosition?: Alignment;
|
|
31
23
|
/** @ignore @private */
|
|
32
|
-
setChildHasSubmenu?: (value: boolean) => void;
|
|
33
|
-
/** @ignore @private */
|
|
34
|
-
setChildHasIcon?: (value: boolean) => void;
|
|
35
|
-
/** @ignore @private */
|
|
36
24
|
setCurrentSubmenuPosition?: (value: Alignment) => void;
|
|
37
|
-
/** @ignore @private */
|
|
38
|
-
isASubmenu?: boolean;
|
|
39
25
|
}
|
|
40
26
|
export declare const ActionPopoverItem: {
|
|
41
|
-
({ children, icon, disabled, onClick: onClickProp, submenu,
|
|
27
|
+
({ children, icon, disabled, onClick: onClickProp, submenu, focusItem, download, href, currentSubmenuPosition, setCurrentSubmenuPosition, ...rest }: ActionPopoverItemProps): React.JSX.Element;
|
|
42
28
|
displayName: string;
|
|
43
29
|
};
|
|
44
30
|
export default ActionPopoverItem;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("react"),n=require("invariant"),r=require("../action-popover.style.js"),o=require("../../../__internal__/utils/helpers/events/events.js"),u=require("../../../__internal__/utils/helpers/guid/index.js"),i=require("../__internal__/action-popover.context.js"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("react"),n=require("invariant"),r=require("../action-popover.style.js"),o=require("../../../__internal__/utils/helpers/events/events.js"),u=require("../../../__internal__/utils/helpers/guid/index.js"),i=require("../__internal__/action-popover.context.js"),c=require("../action-popover-menu/action-popover-menu.component.js");function a(e){return e&&e.__esModule?e:{default:e}}var l=a(t),s=a(n);function f(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function p(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter((function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable})))),r.forEach((function(t){f(e,t,n[t])}))}return e}function d(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t.push.apply(t,n)}return t}(Object(t)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})),e}function m(e){return Boolean(e&&e.current)}const v=n=>{var{children:a,icon:f,disabled:v=!1,onClick:b,submenu:y,focusItem:P,download:h,href:g,currentSubmenuPosition:O,setCurrentSubmenuPosition:j}=n,_=function(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},u=Object.keys(e);for(r=0;r<u.length;r++)n=u[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var u=Object.getOwnPropertySymbols(e);for(r=0;r<u.length;r++)n=u[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}(n,["children","icon","disabled","onClick","submenu","focusItem","download","href","currentSubmenuPosition","setCurrentSubmenuPosition"]);s.default(!l.default.isValidElement(y)||y.type===c.default,"ActionPopoverItem only accepts submenu of type `ActionPopoverMenu`");const{setOpenPopover:x,focusButton:I,submenuPosition:w}=i.useActionPopoverContext(),S=!!g,[E,k]=t.useState(void 0),[D]=t.useState(u.default()),[M,C]=t.useState(!1),[K,q]=t.useState(0),A=t.useRef(null),T=t.useRef(null),R=t.useRef(null),L=t.useRef(null),W=t.useCallback((()=>{const e=function(e,t,n,r){if(!e.current||!t.current)return r||n;const{left:o,right:u}=e.current.getBoundingClientRect(),{offsetWidth:i}=t.current,c=document.body.clientWidth;return"left"===n?o>=i?"left":"right":c>=u+i?"right":"left"}(T,A,w,O);return null==j||j(e),m(T)&&m(A)&&y}),[y,j,w,O]);t.useEffect((()=>{k((()=>{if(!T.current||!A.current)return;const{offsetWidth:e}=A.current,t="left"===O;return{left:t?-e:"auto",right:t?"auto":-e}}))}),[y,O]),t.useEffect((()=>{y&&W()}),[W,y]),t.useEffect((()=>{P&&setTimeout((()=>{var e;null===(e=T.current)||void 0===e||e.focus()}),0)}),[P]),t.useEffect((()=>function(){R.current&&clearTimeout(R.current),L.current&&clearTimeout(L.current)}),[]),t.useEffect((()=>{const e="resize";return window.addEventListener(e,W),function(){window.removeEventListener(e,W)}}),[W]);const B=t.useCallback((e=>{var t;e.stopPropagation(),v?(null===(t=T.current)||void 0===t||t.focus(),e.preventDefault()):(x(!1),I(),b&&b(e))}),[v,I,b,x]),$=t.useCallback((e=>{if(o.default.isSpaceKey(e))e.preventDefault(),e.stopPropagation();else if(v)o.default.isEnterKey(e)&&e.stopPropagation();else if(y){var t;if("left"===O){if(o.default.isLeftKey(e)||o.default.isEnterKey(e))C(!0),q(0),e.stopPropagation();else if(o.default.isRightKey(e)){var n;C(!1),null===(n=T.current)||void 0===n||n.focus(),e.stopPropagation()}}else(o.default.isRightKey(e)||o.default.isEnterKey(e))&&(C(!0),q(0),e.stopPropagation()),o.default.isLeftKey(e)&&(C(!1),null===(t=T.current)||void 0===t||t.focus(),e.stopPropagation());e.preventDefault()}else if(o.default.isEnterKey(e)){var r;S&&h&&(null===(r=T.current)||void 0===r||r.click()),e.preventDefault(),B(e)}}),[v,h,S,B,y,O]),V=d(p({},!v&&{onClick:e=>{var t;C(!0),null===(t=T.current)||void 0===t||t.focus(),e.preventDefault(),e.stopPropagation()}}),{"aria-haspopup":"true","aria-controls":`ActionPopoverMenu_${D}`,"aria-expanded":M}),z=p({},!v&&{onMouseEnter:e=>{R.current&&clearTimeout(R.current),q(-1),R.current=setTimeout((()=>{C(!0)}),150),e.stopPropagation()},onMouseLeave:e=>{L.current&&clearTimeout(L.current),L.current=setTimeout((()=>{C(!1)}),150),e.stopPropagation()}});return e.jsxs(r.StyledMenuItemWrapper,d(p({onKeyDown:$},y&&z),{children:[e.jsxs(r.StyledMenuItem,d(p(d(p({},_),{ref:T,onClick:B,type:"button",tabIndex:0,isDisabled:v}),v&&{"aria-disabled":!0},S&&{as:"a",download:h,href:g},y&&V),{children:[y&&m(T)&&e.jsx(r.SubMenuItemIcon,{"aria-hidden":!0,"data-element":"action-popover-menu-item-chevron","data-role":"chevron-icon",type:"left"===O?"chevron_left_thick":"chevron_right_thick"}),f&&e.jsx(r.MenuItemIcon,{"aria-hidden":!0,type:f,"data-element":"action-popover-menu-item-icon","data-role":"item-icon"}),e.jsx(r.StyledMenuItemInnerText,{"data-element":"action-popover-menu-item-inner-text",children:a})]})),l.default.isValidElement(y)?l.default.cloneElement(y,{parentID:`ActionPopoverItem_${D}`,menuID:`ActionPopoverMenu_${D}`,"data-element":"action-popover-submenu",isOpen:M,ref:A,style:E,setOpen:C,setFocusIndex:q,focusIndex:K}):null]}))};v.displayName="ActionPopoverItem",exports.ActionPopoverItem=v,exports.default=v;
|
package/lib/components/action-popover/action-popover-menu/action-popover-menu.component.d.ts
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
import { Alignment } from "../__internal__/action-popover.context";
|
|
3
2
|
export interface ActionPopoverMenuBaseProps {
|
|
4
3
|
/** Children for the menu */
|
|
5
4
|
children?: React.ReactNode;
|
|
@@ -23,15 +22,11 @@ export interface ActionPopoverMenuBaseProps {
|
|
|
23
22
|
setOpen?: (args: boolean) => void;
|
|
24
23
|
/** Unique ID for the menu's parent */
|
|
25
24
|
parentID?: string;
|
|
26
|
-
/** Horizontal alignment of menu items content */
|
|
27
|
-
horizontalAlignment?: Alignment;
|
|
28
25
|
/** Set whether the menu should open above or below the button */
|
|
29
26
|
placement?: "bottom" | "top";
|
|
30
27
|
/** @ignore @private */
|
|
31
28
|
role?: string;
|
|
32
29
|
/** @ignore @private */
|
|
33
|
-
isASubmenu?: boolean;
|
|
34
|
-
/** @ignore @private */
|
|
35
30
|
"data-element"?: string;
|
|
36
31
|
/** @ignore @private */
|
|
37
32
|
style?: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("react"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("react"),o=require("invariant"),n=require("../action-popover.style.js"),r=require("../../../__internal__/utils/helpers/events/events.js"),i=require("../action-popover-item/action-popover-item.component.js");require("../action-popover-divider/action-popover-divider.component.js");var a=require("../__internal__/action-popover.context.js"),l=require("../__internal__/action-popover.utils.js");function s(e){return e&&e.__esModule?e:{default:e}}var u=s(t),p=s(o);function c(e,t,o){return t in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o,e}const f=u.default.forwardRef(((o,s)=>{var{children:f,parentID:d,focusIndex:m,isOpen:v,menuID:y,setOpen:b,setFocusIndex:O,placement:P="bottom"}=o,j=function(e,t){if(null==e)return{};var o,n,r=function(e,t){if(null==e)return{};var o,n,r={},i=Object.keys(e);for(n=0;n<i.length;n++)o=i[n],t.indexOf(o)>=0||(r[o]=e[o]);return r}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)o=i[n],t.indexOf(o)>=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(r[o]=e[o])}return r}(o,["children","parentID","focusIndex","isOpen","menuID","setOpen","setFocusIndex","placement"]);const{focusButton:g,submenuPosition:h,horizontalAlignment:I}=a.useActionPopoverContext();p.default(b&&O&&void 0!==m,"ActionPopoverMenu must be used within an ActionPopover or ActionPopoverItem component");const D=t.useMemo((()=>!u.default.Children.toArray(f).find((e=>!u.default.isValidElement(e)||"ActionPopoverItem"!==e.type.displayName&&"ActionPopoverDivider"!==e.type.displayName))),[f]);p.default(D,`ActionPopoverMenu only accepts children of type \`${i.ActionPopoverItem.displayName}\` and \`${n.MenuItemDivider.displayName}\`.`);const w=t.useMemo((()=>l.getItems(f)),[f]),_=t.useCallback((e=>l.isItemDisabled(w[e])),[w]),x=l.findFirstFocusableItem(w),A=l.findLastFocusableItem(w),M=t.useCallback((e=>{if(r.default.isTabKey(e))e.preventDefault(),g(),b(!1);else if(r.default.isDownKey(e)){e.preventDefault(),e.stopPropagation();let t=m+1;for(;t<w.length&&_(t);)t+=1;t>=w.length&&(t=x),O(t)}else if(r.default.isUpKey(e)){e.preventDefault(),e.stopPropagation();let t=m-1;for(;t>=x&&_(t);)t-=1;t<x&&(t=A),O(t)}else if(r.default.isHomeKey(e))e.preventDefault(),e.stopPropagation(),O(x);else if(r.default.isEndKey(e))e.preventDefault(),e.stopPropagation(),O(A);else if(1===e.key.length){let t,o;e.stopPropagation(),w.forEach(((n,r)=>{u.default.isValidElement(n)&&!_(r)&&n.props.children.toLowerCase().startsWith(e.key.toLowerCase())&&(void 0===t&&(t=r),r>m&&void 0===o&&(o=r))})),void 0!==o?O(o):void 0!==t&&O(t)}}),[g,b,m,w,_,O,x,A]),[q,E]=t.useState(h),S=t.useMemo((()=>{let e=0;return u.default.Children.map(f,(t=>u.default.isValidElement(t)&&t.type===i.ActionPopoverItem?(e+=1,u.default.cloneElement(t,{focusItem:v&&m===e-1,currentSubmenuPosition:q,setCurrentSubmenuPosition:E})):t))}),[f,m,v,q]);return e.jsx(n.Menu,(C=function(e){for(var t=1;t<arguments.length;t++){var o=null!=arguments[t]?arguments[t]:{},n=Object.keys(o);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(o).filter((function(e){return Object.getOwnPropertyDescriptor(o,e).enumerable})))),n.forEach((function(t){c(e,t,o[t])}))}return e}({"data-component":"action-popover","data-submenu-placement":P,isOpen:!!v,onKeyDown:M,id:y,"aria-labelledby":d,ref:s,role:"list",submenuLeft:"left"===q,iconLeft:"left"===I},j),k=null!=(k={children:S})?k:{},Object.getOwnPropertyDescriptors?Object.defineProperties(C,Object.getOwnPropertyDescriptors(k)):function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t.push.apply(t,o)}return t}(Object(k)).forEach((function(e){Object.defineProperty(C,e,Object.getOwnPropertyDescriptor(k,e))})),C));var C,k}));f.displayName="ActionPopoverMenu",exports.default=f;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("react"),r=require("invariant"),n=require("../../__internal__/utils/helpers/tags/tags.js"),o=require("./action-popover.style.js"),a=require("../../__internal__/utils/helpers/events/events.js"),i=require("../../__internal__/popover/popover.component.js"),l=require("../../__internal__/utils/helpers/guid/index.js"),u=require("../../hooks/__internal__/useLocale/useLocale.js"),s=require("./action-popover-menu/action-popover-menu.component.js"),c=require("./action-popover-item/action-popover-item.component.js");require("./action-popover-divider/action-popover-divider.component.js");var p=require("./__internal__/action-popover.context.js"),d=require("../../hooks/__internal__/useModalManager/useModalManager.js"),b=require("./__internal__/action-popover.utils.js"),f=require("../flat-table/__internal__/flat-table.context.js");function v(e){return e&&e.__esModule?e:{default:e}}var m=v(t),y=v(r);function _(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("react"),r=require("invariant"),n=require("../../__internal__/utils/helpers/tags/tags.js"),o=require("./action-popover.style.js"),a=require("../../__internal__/utils/helpers/events/events.js"),i=require("../../__internal__/popover/popover.component.js"),l=require("../../__internal__/utils/helpers/guid/index.js"),u=require("../../hooks/__internal__/useLocale/useLocale.js"),s=require("./action-popover-menu/action-popover-menu.component.js"),c=require("./action-popover-item/action-popover-item.component.js");require("./action-popover-divider/action-popover-divider.component.js");var p=require("./__internal__/action-popover.context.js"),d=require("../../hooks/__internal__/useModalManager/useModalManager.js"),b=require("./__internal__/action-popover.utils.js"),f=require("../flat-table/__internal__/flat-table.context.js");function v(e){return e&&e.__esModule?e:{default:e}}var m=v(t),y=v(r);function _(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}const j=()=>{},O=()=>{},g=t.forwardRef(((r,v)=>{var{children:g,id:P,onOpen:h=j,onClose:x=O,rightAlignMenu:I,renderButton:q,placement:M="bottom",horizontalAlignment:w="left",submenuPosition:A="left","aria-label":k,"aria-labelledby":S,"aria-describedby":D}=r,C=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},a=Object.keys(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(r,["children","id","onOpen","onClose","rightAlignMenu","renderButton","placement","horizontalAlignment","submenuPosition","aria-label","aria-labelledby","aria-describedby"]);const B=u.default(),[E,L]=t.useState(!1),[F,K]=t.useState(0),[$]=t.useState(l.default()),R=t.useRef(null),z=t.useRef(null),{isInFlatTable:N}=t.useContext(f.default),U=t.useMemo((()=>!m.default.Children.toArray(g).find((e=>!m.default.isValidElement(e)||e.type!==c.ActionPopoverItem&&e.type!==o.MenuItemDivider))),[g]),H=t.useMemo((()=>b.getItems(g)),[g]),T=b.findFirstFocusableItem(H),V=b.findLastFocusableItem(H);y.default(U,`ActionPopover only accepts children of type \`${c.ActionPopoverItem.displayName}\` and \`${o.MenuItemDivider.displayName}\`.`);const G=t.useMemo((()=>"top"!==M||I?"top"===M&&I?"top-start":"bottom"===M&&I?"bottom-start":"bottom-end":"top-end"),[M,I]),J=t.useCallback((e=>{e&&!E&&h(),!e&&E&&x(),L(e)}),[E,h,x]),Q=t.useCallback((()=>{var e;const t=null===(e=R.current)||void 0===e?void 0:e.querySelector("[data-element='action-popover-button']");null==t||t.focus()}),[]);t.useImperativeHandle(v,(()=>({focusButton(){Q()}})),[Q]);const W=t.useCallback((e=>{e.stopPropagation();const t=!E;K(T),J(t),t||Q()}),[E,T,J,Q]),X=t.useCallback((e=>{a.default.isSpaceKey(e)||a.default.isDownKey(e)||a.default.isEnterKey(e)?(e.preventDefault(),e.stopPropagation(),K(T),J(!0)):a.default.isUpKey(e)&&(e.preventDefault(),e.stopPropagation(),K(V),J(!0))}),[T,V,J]),Y=t.useCallback((e=>{a.default.isEscKey(e)&&(J(!1),Q())}),[J,Q]);d.default({open:E,closeModal:Y,modalRef:R}),t.useEffect((()=>{const e=({target:e})=>{var t,r;const n=null==z||null===(t=z.current)||void 0===t?void 0:t.contains(e),o=null==R||null===(r=R.current)||void 0===r?void 0:r.contains(e);n||o||J(!1)},t="click";return document.addEventListener(t,e,{capture:!0}),function(){document.removeEventListener(t,e,{capture:!0})}}),[J]);const Z=P||`ActionPopoverButton_${$}`,ee=`ActionPopoverMenu_${$}`;return e.jsxs(o.MenuButton,(te=function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter((function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable})))),n.forEach((function(t){_(e,t,r[t])}))}return e}({id:Z,onKeyDown:X,onClick:W,isOpen:E,ref:R},C,n.default("action-popover-wrapper",C)),re=null!=(re={children:[(t=>{if(q){const e=q({tabIndex:E?-1:0,"data-element":"action-popover-button",ariaAttributes:{"aria-haspopup":"true","aria-label":k||B.actionPopover.ariaLabel(),"aria-labelledby":S,"aria-describedby":D,"aria-controls":t,"aria-expanded":`${E}`}}),r=b.checkChildrenForString(e);return q({tabIndex:E?-1:0,"data-element":"action-popover-button",ariaAttributes:{"aria-haspopup":"true","aria-label":r?void 0:k||B.actionPopover.ariaLabel(),"aria-labelledby":S,"aria-describedby":D,"aria-controls":t,"aria-expanded":`${E}`}})}return e.jsx(o.StyledButtonIcon,{role:"button","aria-haspopup":"true","aria-label":k||B.actionPopover.ariaLabel(),"aria-labelledby":S,"aria-describedby":D,"aria-controls":t,"aria-expanded":E,tabIndex:E?-1:0,"data-element":"action-popover-button",children:e.jsx(o.ButtonIcon,{type:"ellipsis_vertical"})})})(ee),e.jsx(p.ActionPopoverProvider,{value:{setOpenPopover:J,focusButton:Q,submenuPosition:A,horizontalAlignment:w},children:E&&e.jsx(i.default,{placement:G,reference:R,disableBackgroundUI:N,children:e.jsx(s.default,{"data-component":"action-popover",ref:z,parentID:Z,menuID:ee,focusIndex:F,setFocusIndex:K,isOpen:E,setOpen:J,placement:M,children:g})})})]})?re:{},Object.getOwnPropertyDescriptors?Object.defineProperties(te,Object.getOwnPropertyDescriptors(re)):function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t.push.apply(t,r)}return t}(Object(re)).forEach((function(e){Object.defineProperty(te,e,Object.getOwnPropertyDescriptor(re,e))})),te));var te,re}));exports.ActionPopover=g,exports.default=g;
|
|
@@ -1,20 +1,13 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
declare const Menu: import("styled-components").StyledComponent<"ul", any, {
|
|
3
|
-
isOpen
|
|
3
|
+
isOpen: boolean;
|
|
4
|
+
submenuLeft: boolean;
|
|
5
|
+
iconLeft: boolean;
|
|
4
6
|
}, never>;
|
|
5
|
-
|
|
7
|
+
declare const StyledMenuItemInnerText: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
8
|
+
declare const StyledMenuItem: import("styled-components").StyledComponent<"button", any, {
|
|
6
9
|
isDisabled: boolean;
|
|
7
|
-
|
|
8
|
-
submenuPosition?: "left" | "right";
|
|
9
|
-
childHasSubmenu?: boolean;
|
|
10
|
-
childHasIcon?: boolean;
|
|
11
|
-
hasSubmenu?: boolean;
|
|
12
|
-
hasIcon?: boolean;
|
|
13
|
-
isASubmenu?: boolean;
|
|
14
|
-
};
|
|
15
|
-
declare const StyledMenuItemInnerText: import("styled-components").StyledComponent<"div", any, Omit<StyledMenuItemProps, "isDisabled">, never>;
|
|
16
|
-
declare const StyledMenuItemOuterContainer: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
17
|
-
declare const StyledMenuItem: import("styled-components").StyledComponent<"button", any, Omit<StyledMenuItemProps, "variant">, never>;
|
|
10
|
+
}, never>;
|
|
18
11
|
declare const StyledMenuItemWrapper: import("styled-components").StyledComponent<"li", any, {}, never>;
|
|
19
12
|
declare const MenuItemDivider: import("styled-components").StyledComponent<"li", any, {
|
|
20
13
|
"data-element": string;
|
|
@@ -22,7 +15,7 @@ declare const MenuItemDivider: import("styled-components").StyledComponent<"li",
|
|
|
22
15
|
declare const MenuButton: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
23
16
|
declare const ButtonIcon: import("styled-components").StyledComponent<import("react").ForwardRefExoticComponent<import("../icon").IconProps & import("react").RefAttributes<HTMLSpanElement>>, any, {}, never>;
|
|
24
17
|
declare const StyledButtonIcon: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
25
|
-
declare const MenuItemIcon: import("styled-components").StyledComponent<import("react").ForwardRefExoticComponent<import("../icon").IconProps & import("react").RefAttributes<HTMLSpanElement>>, any,
|
|
18
|
+
declare const MenuItemIcon: import("styled-components").StyledComponent<import("react").ForwardRefExoticComponent<import("../icon").IconProps & import("react").RefAttributes<HTMLSpanElement>>, any, {}, never>;
|
|
26
19
|
declare const SubMenuItemIcon: import("styled-components").StyledComponent<import("react").ForwardRefExoticComponent<import("../icon").IconProps & import("react").RefAttributes<HTMLSpanElement>>, any, {}, never>;
|
|
27
20
|
declare const MenuButtonOverrideWrapper: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
28
|
-
export { Menu, MenuButton, ButtonIcon, StyledButtonIcon, MenuItemIcon, MenuItemDivider, SubMenuItemIcon, MenuButtonOverrideWrapper, StyledMenuItemInnerText,
|
|
21
|
+
export { Menu, MenuButton, ButtonIcon, StyledButtonIcon, MenuItemIcon, MenuItemDivider, SubMenuItemIcon, MenuButtonOverrideWrapper, StyledMenuItemInnerText, StyledMenuItem, StyledMenuItemWrapper, };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var
|
|
1
|
+
"use strict";var o=require("styled-components"),e=require("styled-system"),t=require("../icon/icon.component.js"),n=require("../icon/icon.style.js"),i=require("../button/button.style.js"),r=require("../../style/utils/add-focus-styling.js"),a=require("../../style/themes/base/index.js");function c(o){return o&&o.__esModule?o:{default:o}}var s=c(o);const d=s.default.ul.withConfig({displayName:"action-popover.style__Menu",componentId:"sc-2ca14dc-0"})(["visibility:",";display:grid;"," align-items:center;min-width:fit-content;text-align:",";justify-content:",";margin:0;list-style:none;padding:var(--spacing100) 0;box-shadow:var(--boxShadow100);position:absolute;border-radius:var(--borderRadius100);background-color:var(--colorsUtilityYang100);z-index:",';&[data-submenu-placement="top"] &{bottom:calc(-1 * var(--spacing100));top:auto;}&[data-submenu-placement="bottom"] &{top:calc(-1 * var(--spacing100));bottom:auto;}'],(({isOpen:o})=>o?"visible":"hidden"),(({submenuLeft:e,iconLeft:t})=>{const n="[chevron_column] auto",i="[icon_column] auto",r="[text_column] auto";return o.css(["grid-template-columns:"," "," ",";"],e?n:"",t?`${i} ${r}`:`${r} ${i}`,e?"":n)}),(({iconLeft:o})=>o?"left":"right"),(({iconLeft:o})=>o?"left":"right"),(({theme:o})=>{var e;return`${null===(e=o.zIndex)||void 0===e?void 0:e.popover}`})),l=s.default.div.withConfig({displayName:"action-popover.style__StyledMenuItemInnerText",componentId:"sc-2ca14dc-1"})(["grid-column:text_column;&:only-child{padding:0;}padding:0 var(--spacing100);"]),u=s.default.button.withConfig({displayName:"action-popover.style__StyledMenuItem",componentId:"sc-2ca14dc-2"})(["display:grid;grid-template-columns:subgrid;grid-template-rows:subgrid;grid-column:span 3;align-items:inherit;text-align:inherit;justify-content:inherit;text-decoration:none;background-color:var(--colorsActionMajorYang100);cursor:pointer;box-sizing:border-box;padding:0 var(--spacing150);position:relative;line-height:40px;white-space:nowrap;user-select:none;border:none;color:var(--colorsUtilityYin090);font-size:14px;font-weight:500;&:focus{"," z-index:1;border-radius:var(--borderRadius000);}"," ",""],r.default(),(({isDisabled:e})=>e&&o.css(["color:var(--colorsUtilityYin030);cursor:not-allowed;&& ","{cursor:not-allowed;color:var(--colorsUtilityYin030);}:focus{border:none;outline:none;-webkit-appearance:none;-webkit-box-shadow:none;box-shadow:none;}"],n.default)),(({isDisabled:e})=>!e&&o.css(["&:focus,&:hover{background-color:var(--colorsUtilityMajor100);}&& ","{cursor:pointer;}"],n.default)));u.defaultProps={theme:a.default};const p=s.default.li.withConfig({displayName:"action-popover.style__StyledMenuItemWrapper",componentId:"sc-2ca14dc-3"})(["display:grid;grid-template-columns:subgrid;grid-template-rows:subgrid;grid-column:span 3;text-align:inherit;align-items:inherit;justify-content:inherit;position:relative;"]),m=s.default.li.attrs({"data-element":"action-popover-divider"}).withConfig({displayName:"action-popover.style__MenuItemDivider",componentId:"sc-2ca14dc-4"})(["grid-column:span 3;background-color:var(--colorsUtilityMajor050);height:var(--borderWidth100);margin:var(--spacing100) var(--spacing150);"]),g=s.default.div.withConfig({displayName:"action-popover.style__MenuButton",componentId:"sc-2ca14dc-5"})(["position:relative;&& ","{cursor:pointer;}width:fit-content;margin:auto;",""],n.default,e.margin),v=s.default(t.default).withConfig({displayName:"action-popover.style__ButtonIcon",componentId:"sc-2ca14dc-6"})(["color:var(--colorsActionMinor500);:hover{color:var(--colorsActionMinor600);}"]),f=s.default.div.withConfig({displayName:"action-popover.style__StyledButtonIcon",componentId:"sc-2ca14dc-7"})(["&:focus{","}border-radius:var(--borderRadius050);"],r.default()),y=s.default(t.default).withConfig({displayName:"action-popover.style__MenuItemIcon",componentId:"sc-2ca14dc-8"})(["justify-content:inherit;grid-column:icon_column;padding:var(--spacing100);color:var(--colorsUtilityYin065);"]);f.defaultProps={theme:a.default};const h=s.default(v).withConfig({displayName:"action-popover.style__SubMenuItemIcon",componentId:"sc-2ca14dc-9"})(["grid-column:chevron_column;",""],(({type:e})=>o.css([""," ",""],"chevron_left_thick"===e&&o.css(["left:-5px;"]),"chevron_right_thick"===e&&o.css(["right:-5px;"])))),b=s.default.div.withConfig({displayName:"action-popover.style__MenuButtonOverrideWrapper",componentId:"sc-2ca14dc-10"})(["","{padding:0px var(--sizing100);width:100%;&:hover,&:focus{background-color:var(--colorsActionMajorTransparent);color:var(--colorsActionMajor600);span[color]{color:var(--colorsActionMajor600);}}}"],i.default);exports.ButtonIcon=v,exports.Menu=d,exports.MenuButton=g,exports.MenuButtonOverrideWrapper=b,exports.MenuItemDivider=m,exports.MenuItemIcon=y,exports.StyledButtonIcon=f,exports.StyledMenuItem=u,exports.StyledMenuItemInnerText=l,exports.StyledMenuItemWrapper=p,exports.SubMenuItemIcon=h;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var e=require("styled-components"),o=require("styled-system"),r=require("./advanced-color-picker-cell.style.js"),i=require("../simple-color-picker/simple-color-picker.style.js"),l=require("../simple-color-picker/simple-color/simple-color.style.js"),t=require("../dialog/dialog.style.js"),d=require("../dialog/dialog.component.js"),s=require("../icon-button/icon-button.style.js"),
|
|
1
|
+
"use strict";var e=require("styled-components"),o=require("styled-system"),r=require("./advanced-color-picker-cell.style.js"),i=require("../simple-color-picker/simple-color-picker.style.js"),l=require("../simple-color-picker/simple-color/simple-color.style.js"),t=require("../dialog/dialog.style.js"),d=require("../dialog/dialog.component.js"),s=require("../icon-button/icon-button.style.js"),a=require("../simple-color-picker/simple-color/checker-board.svg"),n=require("../../style/themes/base/index.js"),c=require("../../style/utils/visually-hidden.js"),p=require("../definition-list/dl.component.js");function u(e){return e&&e.__esModule?e:{default:e}}require("../definition-list/dt/dt.component.js"),require("../definition-list/dd/dd.component.js");var m=u(e),y=u(a);const g=m.default.div.withConfig({displayName:"advanced-color-picker.style__StyledAdvancedColorPickerWrapper",componentId:"sc-a027d762-0"})([""," display:inline-block;"],o.margin),v=m.default(p.default).withConfig({displayName:"advanced-color-picker.style__HiddenCurrentColorList",componentId:"sc-a027d762-1"})(["",""],c.default);g.defaultProps={theme:n.default};const f=m.default.div.withConfig({displayName:"advanced-color-picker.style__StyledAdvancedColorPickerPreview",componentId:"sc-a027d762-2"})(["width:25px;height:25px;margin-bottom:15px;border:1px solid var(--colorsUtilityYin090);border-radius:var(--borderRadius050);"," "," &:hover{cursor:initial;}"],(({color:o})=>"transparent"!==o&&e.css(["background-color:",";"],o)),(({color:o})=>"transparent"===o&&e.css(['background-color:#eeeeee;background-image:url("','");background-size:10px 10px;'],y.default))),k=m.default(d.Dialog).withConfig({displayName:"advanced-color-picker.style__DialogStyle",componentId:"sc-a027d762-3"})(["","{padding:var(--spacing200);}","{max-width:285px;","{border:1px solid var(--colorsUtilityYin090);margin-right:-1px;margin-bottom:-1px;transition:all 0.2s ease;&:hover{transform:scale(1.1);}}}","{border:none;}",'{top:20px;right:13px;}[data-component="icon"]{color:var(--colorsActionMinor500);}'],t.StyledDialogContent,i.StyledColorOptions,l.StyledSimpleColor,i.StyledColorOptions,s.default);exports.StyledAdvancedColorPickerCell=r.default,exports.DialogStyle=k,exports.HiddenCurrentColorList=v,exports.StyledAdvancedColorPickerPreview=f,exports.StyledAdvancedColorPickerWrapper=g;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var e=require("styled-components"),o=require("../../../__internal__/input/input.component.js");require("react/jsx-runtime"),require("react"),require("../../../__internal__/input/input-presentation.style.js"),require("../../carbon-provider/__internal__/new-validation.context.js");var t=require("./checker-board.svg"),r=require("../../icon/icon.component.js"),i=require("../../../style/utils/get-rgb-values.js"),n=require("../../../style/utils/add-focus-styling.js");function l(e){return e&&e.__esModule?e:{default:e}}var s=l(e),a=l(t);const c=s.default.div.withConfig({displayName:"simple-color.style__StyledSimpleColor",componentId:"sc-
|
|
1
|
+
"use strict";var e=require("styled-components"),o=require("../../../__internal__/input/input.component.js");require("react/jsx-runtime"),require("react"),require("../../../__internal__/input/input-presentation.style.js"),require("../../carbon-provider/__internal__/new-validation.context.js");var t=require("./checker-board.svg"),r=require("../../icon/icon.component.js"),i=require("../../../style/utils/get-rgb-values.js"),n=require("../../../style/utils/add-focus-styling.js");function l(e){return e&&e.__esModule?e:{default:e}}var s=l(e),a=l(t);const c=s.default.div.withConfig({displayName:"simple-color.style__StyledSimpleColor",componentId:"sc-b2f24669-0"})(["width:var(--sizing700);height:var(--sizing700);margin-right:2px;margin-bottom:2px;&:hover{cursor:pointer;}"]),d=s.default.div.withConfig({displayName:"simple-color.style__StyledColorSampleBox",componentId:"sc-b2f24669-1"})(["height:100%;width:100%;box-sizing:border-box;display:flex;align-items:center;justify-content:center;"," ",""],(({color:o})=>"transparent"!==o&&e.css(["background-color:",";"],o)),(({color:o})=>"transparent"===o&&e.css(['background-color:#eeeeee;background-image:url("','");background-size:14px 14px;background-position:-2px -2px;'],a.default))),p=s.default(o.default).withConfig({displayName:"simple-color.style__StyledSimpleColorInput",componentId:"sc-b2f24669-2"})(["position:absolute;opacity:0;height:var(--sizing700);width:var(--sizing700);margin:0;&:hover{cursor:pointer;}&:disabled:hover{cursor:not-allowed;}&:focus + ","{","}"],d,n.default(!0)),u=s.default(r.default).withConfig({displayName:"simple-color.style__StyledTickIcon",componentId:"sc-b2f24669-3"})(["height:20px;width:20px;pointer-events:none;display:block;&::before{font-size:20px;color:",";}"],(({color:e})=>(e=>{const o=i.default(e),[t,r,n]=o;return(Math.round(299*t)+Math.round(587*r)+Math.round(114*n))/1e3<128?"var(--colorsUtilityYang100)":"var(--colorsUtilityYin090)"})(e)));exports.StyledColorSampleBox=d,exports.StyledSimpleColor=c,exports.StyledSimpleColorInput=p,exports.StyledTickIcon=u;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "carbon-react",
|
|
3
|
-
"version": "154.
|
|
3
|
+
"version": "154.5.0",
|
|
4
4
|
"description": "A library of reusable React components for easily building user interfaces.",
|
|
5
5
|
"files": [
|
|
6
6
|
"lib",
|
|
@@ -80,23 +80,24 @@
|
|
|
80
80
|
"@semantic-release/changelog": "^6.0.3",
|
|
81
81
|
"@semantic-release/exec": "^6.0.3",
|
|
82
82
|
"@semantic-release/git": "^10.0.1",
|
|
83
|
-
"@storybook/addon-a11y": "~8.6.
|
|
84
|
-
"@storybook/addon-actions": "~8.6.
|
|
85
|
-
"@storybook/addon-controls": "~8.6.
|
|
86
|
-
"@storybook/addon-docs": "~8.6.
|
|
87
|
-
"@storybook/addon-
|
|
88
|
-
"@storybook/addon-
|
|
89
|
-
"@storybook/addon-
|
|
90
|
-
"@storybook/addon-
|
|
91
|
-
"@storybook/
|
|
92
|
-
"@storybook/
|
|
93
|
-
"@storybook/
|
|
94
|
-
"@storybook/
|
|
95
|
-
"@storybook/react
|
|
96
|
-
"@storybook/
|
|
83
|
+
"@storybook/addon-a11y": "~8.6.12",
|
|
84
|
+
"@storybook/addon-actions": "~8.6.12",
|
|
85
|
+
"@storybook/addon-controls": "~8.6.12",
|
|
86
|
+
"@storybook/addon-docs": "~8.6.12",
|
|
87
|
+
"@storybook/addon-essentials": "~8.6.12",
|
|
88
|
+
"@storybook/addon-interactions": "~8.6.12",
|
|
89
|
+
"@storybook/addon-toolbars": "~8.6.12",
|
|
90
|
+
"@storybook/addon-viewport": "~8.6.12",
|
|
91
|
+
"@storybook/builder-vite": "~8.6.12",
|
|
92
|
+
"@storybook/components": "~8.6.12",
|
|
93
|
+
"@storybook/manager-api": "~8.6.12",
|
|
94
|
+
"@storybook/preview-api": "~8.6.12",
|
|
95
|
+
"@storybook/react": "~8.6.12",
|
|
96
|
+
"@storybook/react-vite": "~8.6.12",
|
|
97
|
+
"@storybook/test": "~8.6.12",
|
|
97
98
|
"@storybook/test-runner": "^0.22.0",
|
|
98
|
-
"@storybook/theming": "~8.6.
|
|
99
|
-
"@storybook/types": "~8.6.
|
|
99
|
+
"@storybook/theming": "~8.6.12",
|
|
100
|
+
"@storybook/types": "~8.6.12",
|
|
100
101
|
"@swc/core": "^1.11.29",
|
|
101
102
|
"@swc/helpers": "^0.5.15",
|
|
102
103
|
"@swc/plugin-styled-components": "^7.1.0",
|
|
@@ -179,14 +180,14 @@
|
|
|
179
180
|
"semantic-release": "^24.2.3",
|
|
180
181
|
"semver": "^7.5.4",
|
|
181
182
|
"sprintf-js": "^1.1.3",
|
|
182
|
-
"storybook": "~8.6.
|
|
183
|
+
"storybook": "~8.6.12",
|
|
183
184
|
"storybook-addon-pseudo-states": "~4.0.2",
|
|
184
185
|
"styled-components": "^5.3.11",
|
|
185
186
|
"typescript": "~5.3.0",
|
|
186
187
|
"url-loader": "^4.1.1",
|
|
187
188
|
"uuid": "^8.3.2",
|
|
188
189
|
"vite": "^6.3.4",
|
|
189
|
-
"
|
|
190
|
+
"vite-plugin-static-copy": "^2.2.0"
|
|
190
191
|
},
|
|
191
192
|
"dependencies": {
|
|
192
193
|
"@floating-ui/dom": "~1.2.9",
|
|
@@ -215,6 +216,9 @@
|
|
|
215
216
|
"react-transition-group": "^4.4.5",
|
|
216
217
|
"styled-system": "^5.1.5"
|
|
217
218
|
},
|
|
219
|
+
"optionalDependencies": {
|
|
220
|
+
"@rollup/rollup-linux-x64-gnu": "4.9.5"
|
|
221
|
+
},
|
|
218
222
|
"overrides": {
|
|
219
223
|
"playwright-core": "$@playwright/experimental-ct-react",
|
|
220
224
|
"jsdom": "$jsdom"
|