UNPKG

@commercelayer/react-components

Version:
2 lines 1.01 kB
"use client"; "use strict";Object.defineProperty(exports,"__esModule",{value:!0});const tslib_1=require("tslib"),jsx_runtime_1=require("react/jsx-runtime"),react_1=tslib_1.__importDefault(require("react")),Parent_1=tslib_1.__importDefault(require("./Parent")),BaseSelect=(props,ref)=>{const{options=[],children,placeholder={label:"Select an option",value:""},value=""}=props,p=tslib_1.__rest(props,["options","children","placeholder","value"]);placeholder!=null&&(options.some(option=>option.value===placeholder.value)||options.unshift(placeholder));const Options=options.map((o,k)=>{const{label}=o,option=tslib_1.__rest(o,["label"]);return(0,jsx_runtime_1.jsx)("option",Object.assign({},option,{children:label}),k)}),parentProps=Object.assign({options,ref},p);return children?(0,jsx_runtime_1.jsx)(Parent_1.default,Object.assign({},parentProps,{children})):(0,jsx_runtime_1.jsx)("select",Object.assign({ref,defaultValue:value},p,{children:Options}))};exports.default=react_1.default.forwardRef(BaseSelect);