UNPKG

carbon-react

Version:

A library of reusable React components for easily building user interfaces.

2 lines (1 loc) 3.18 kB
import{jsx as e,Fragment as r}from"react/jsx-runtime";import{useContext as n,useRef as t}from"react";import i from"./checkbox-group.style.js";import o from"../../../__internal__/utils/helpers/tags/tags.js";import l from"../../../__internal__/fieldset/fieldset.component.js";import"../../../style/utils/filter-styled-system-padding-props.js";import c from"../../../style/utils/filter-styled-system-margin-props.js";import{TooltipProvider as p}from"../../../__internal__/tooltip-provider/index.js";import a from"../../carbon-provider/__internal__/new-validation.context.js";import d from"./__internal__/checkbox-group.context.js";import s from"../../../__internal__/utils/helpers/guid/index.js";function g(e,r,n){return r in e?Object.defineProperty(e,r,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[r]=n,e}function u(e){for(var r=1;r<arguments.length;r++){var n=null!=arguments[r]?arguments[r]:{},t=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(t=t.concat(Object.getOwnPropertySymbols(n).filter((function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable})))),t.forEach((function(r){g(e,r,n[r])}))}return e}function f(e,r){return r=null!=r?r:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):function(e){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);r.push.apply(r,n)}return r}(Object(r)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})),e}const b=g=>{var{children:b,legend:m,error:y,warning:h,info:O,required:j,legendInline:_,legendWidth:v,legendAlign:P="left",legendSpacing:w,legendHelp:x,tooltipPosition:k,inline:S,id:I,validationMessagePositionTop:q=!0}=g,A=function(e,r){if(null==e)return{};var n,t,i=function(e,r){if(null==e)return{};var n,t,i={},o=Object.keys(e);for(t=0;t<o.length;t++)n=o[t],r.indexOf(n)>=0||(i[n]=e[n]);return i}(e,r);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(t=0;t<o.length;t++)n=o[t],r.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}(g,["children","legend","error","warning","info","required","legendInline","legendWidth","legendAlign","legendSpacing","legendHelp","tooltipPosition","inline","id","validationMessagePositionTop"]);const{validationRedesignOptIn:D}=n(a),E=t(s()),H=I||E.current;return e(r,{children:D?e(l,f(u({applyNewValidation:!0,id:H,legend:m,inputHint:x,legendAlign:P,error:y,warning:h,isRequired:j,validationMessagePositionTop:q,width:"fit-content"},o("checkboxgroup",A),c(A)),{children:e(i,{"data-component":"checkbox-group","data-role":"checkbox-group",inline:S,children:e(d.Provider,{value:{error:!!y,warning:!!h},children:b})})})):e(p,{tooltipPosition:k,children:e(l,f(u(f(u({id:H,legend:m,inline:_,legendWidth:v,legendAlign:P,legendSpacing:w,error:y,warning:h,info:O,isRequired:j},o("checkboxgroup",A)),{blockGroupBehaviour:!(y||h||O)}),c(A)),{children:e(i,{"data-component":"checkbox-group","data-role":"checkbox-group",legendInline:_,children:e(d.Provider,{value:{error:!!y,warning:!!h,info:!!O},children:b})})}))})})};b.displayName="CheckboxGroup";export{b as CheckboxGroup,b as default};