UNPKG

@workday/canvas-kit-react

Version:

The parent module that contains all Workday Canvas Kit React components

22 lines (21 loc) 1.18 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.useSegmentedControlItem = void 0; const collection_1 = require("@workday/canvas-kit-react/collection"); const common_1 = require("@workday/canvas-kit-react/common"); const useSegmentedControlModel_1 = require("./useSegmentedControlModel"); exports.useSegmentedControlItem = (0, common_1.composeHooks)(collection_1.useListItemSelect, (0, common_1.createElemPropsHook)(useSegmentedControlModel_1.useSegmentedControlModel)((model, _, elemProps = {}) => { const name = elemProps['data-id'] || ''; const selected = !!name && (0, collection_1.isSelected)(name, model.state); return { id: `${model.state.id}-${name}`, 'aria-pressed': selected, }; }), collection_1.useListItemRegister, (0, common_1.createElemPropsHook)(useSegmentedControlModel_1.useSegmentedControlModel)(({ state }) => { return { // override the default disabled functionality of `useListItemRegister` // it shouldn't allow to set disabled state only for one button // state prop will disable the whole container disabled: state.disabled ? true : undefined, }; }));