UNPKG

@styleless-ui/react

Version:

Completely unstyled, headless and accessible React UI components.

1 lines 2.5 kB
"use strict";var __assign=this&&this.__assign||function(){return __assign=Object.assign||function(t){for(var e,r=1,n=arguments.length;r<n;r++)for(var i in e=arguments[r])Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i]);return t},__assign.apply(this,arguments)},__createBinding=this&&this.__createBinding||(Object.create?function(t,e,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(e,r);i&&!("get"in i?!e.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,i)}:function(t,e,r,n){void 0===n&&(n=r),t[n]=e[r]}),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),__importStar=this&&this.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var r in t)"default"!==r&&Object.prototype.hasOwnProperty.call(t,r)&&__createBinding(e,t,r);return __setModuleDefault(e,t),e},__rest=this&&this.__rest||function(t,e){var r={};for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&e.indexOf(n)<0&&(r[n]=t[n]);if(null!=t&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(n=Object.getOwnPropertySymbols(t);i<n.length;i++)e.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(t,n[i])&&(r[n[i]]=t[n[i]])}return r},__importDefault=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(exports,"__esModule",{value:!0});var jsx_runtime_1=require("react/jsx-runtime"),React=__importStar(require("react")),Button_1=__importDefault(require("../../Button")),utils_1=require("../../utils"),context_1=__importDefault(require("../context")),slots_1=require("../slots"),ExpandableTriggerBase=function(t,e){var r=t.id,n=t.onClick,i=__rest(t,["id","onClick"]),o=React.useContext(context_1.default),a=(0,utils_1.useDeterministicId)(r,"styleless-ui__expandable-trigger");return(0,jsx_runtime_1.jsx)(Button_1.default,__assign({},i,{id:a,onClick:function(t){null==o||o.handleExpandChange(!o.isExpanded),null==n||n(t)},ref:function(t){if((0,utils_1.setRef)(e,t),t){var r=t.closest('[data-slot="'.concat(slots_1.Root,'"]'));if(r){var n=r.querySelector('[data-slot="'.concat(slots_1.ContentRoot,'"]'));if(n){var i=n.id;i&&t.setAttribute("aria-controls",i)}}}},"data-slot":slots_1.TriggerRoot,"aria-expanded":null==o?void 0:o.isExpanded}))},ExpandableTrigger=(0,utils_1.componentWithForwardedRef)(ExpandableTriggerBase);exports.default=ExpandableTrigger;