carbon-react
Version:
A library of reusable React components for easily building user interfaces.
2 lines (1 loc) • 1.81 kB
JavaScript
import{jsxs as e,jsx as t}from"react/jsx-runtime";import{useRef as o,useCallback as r}from"react";import n from"../../../../__internal__/utils/helpers/guid/index.js";import p from"../../../../hooks/__internal__/useLocale/useLocale.js";import{ButtonToggle as c}from"../../../button-toggle/button-toggle.component.js";import l from"../../../button-toggle/button-toggle-group/button-toggle-group.component.js";function i(e,t,o){return t in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o,e}function u(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){i(e,t,o[t])}))}return e}function a(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 o=Object.getOwnPropertySymbols(e);t.push.apply(t,o)}return t}(Object(t)).forEach((function(o){Object.defineProperty(e,o,Object.getOwnPropertyDescriptor(t,o))})),e}const g=({size:i,onChange:g,toggleValue:s,disabled:m,toggleProps:b})=>{const f=p(),O=f.time.amText(),j=f.time.pmText(),y=o(n()),{wrapperProps:d,amToggleProps:P,pmToggleProps:h}=b||{},w=r((e=>{const t=e.target.value;t!==s&&g(t)}),[s,g]);return e(l,a(u({},d),{"data-component":"time-button-toggle-group",m:"0px 0px 0px 16px",id:y.current,onChange:w,value:s,disabled:m,children:[t(c,a(u({},P),{"data-component":"am-button-toggle",value:"AM",size:i,children:O})),t(c,a(u({},h),{"data-component":"pm-button-toggle",value:"PM",size:i,children:j}))]}))};g.displayName="Toggle";export{g as default};