@tomorrowevening/hermes
Version:
An extendable set of Web Tools controlled via a separate window for non-intereference with content.
2 lines (1 loc) • 727 B
JavaScript
;const o=require("react/jsx-runtime"),s=require("react"),c=require("./Draggable.cjs"),a=require("./Dropdown.cjs"),u=require("../utils.cjs");function d(r){const{option:e}=r,[l,n]=s.useState("");let t;switch(e.type){case"draggable":t=o.jsx(c,{title:e.title,options:e.value,onDragComplete:i=>{e.onDragComplete!==void 0&&e.onDragComplete(i)},subdropdown:!0});break;case"dropdown":t=o.jsx(a,{title:e.title,options:e.value,onSelect:e.onSelect,subdropdown:!0});break;case"option":t=o.jsx("button",{onClick:()=>{e.onSelect!==void 0&&e.onSelect(e.value),e.selectable&&(l!==e.title?n(e.title):n(""))},children:e.title});break}return o.jsx("li",{className:l===e.title?"selected":"",children:t},u.randomID())}module.exports=d;