UNPKG

ponchojs

Version:

Poncho

3 lines (2 loc) 1.3 kB
import{a as e,j as i,F as a}from"./emotion-react-jsx-runtime.esm-991ce217.js";import{memo as s,useCallback as r}from"react";import n from"classnames";const o=s((s=>{const{subtitle:o,title:t,icon:d,image:c,isFeatured:l,onClick:m,href:h}=s;if(c&&!l)throw Error("Prop image must be set with isFeatured");if(l&&c&&d)throw Error("Prop isFeatured must be set with either iamge or icon. One or another");const v=r((()=>l?e("div",d?Object.assign({className:"panel-heading icon-fix"},{children:e("i",{className:d},void 0)}):{className:"panel-heading",style:{backgroundImage:`url(${c})`}},void 0):null),[l,d,c]),p=r((()=>{var s=i(a,{children:[e("h3",{children:t},void 0),o&&e("p",Object.assign({className:"text-muted"},{children:o}),void 0)]},void 0);return d&&!l?i("div",{children:[e("div",Object.assign({className:"media-left padding-5"},{children:e("i",{className:`fa-3x ${d} text-secondary`},void 0)}),void 0),e("div",Object.assign({className:"media-body"},{children:s}),void 0)]},void 0):s}),[d,l,t,o]);return i("a",Object.assign({className:n("panel","panel-default",{"panel-icon":l&&!!d,"panel-secondary":l&&!!d}),onClick:m,href:m?void 0:h||"#"},{children:[v(),e("div",Object.assign({className:"panel-body"},{children:p()}),void 0)]}),void 0)}));export{o as Panel}; //# sourceMappingURL=panel.js.map