UNPKG

primereact

Version:

PrimeReact is an open source UI library for React featuring a rich set of 90+ components, a theme designer, various theme alternatives such as Material, Bootstrap, Tailwind, premium templates and professional support. In addition, it integrates with Prime

2 lines (1 loc) 2.82 kB
import*as e from"react";import{PrimeReactContext as t}from"primereact/api";import{ComponentBase as r,useHandleStyle as n}from"primereact/componentbase";import{useMergeProps as o}from"primereact/hooks";import{classNames as a,IconUtils as i}from"primereact/utils";function c(e){return c="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},c(e)}function l(e,t){if("object"!==c(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!==c(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}function u(e){var t=l(e,"string");return"symbol"===c(t)?t:String(t)}function p(e,t,r){return(t=u(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var s=r.extend({defaultProps:{__TYPE:"Tag",value:null,severity:null,rounded:!1,icon:null,style:null,className:null,children:void 0},css:{classes:{value:"p-tag-value",icon:"p-tag-icon",root:function(e){var t=e.props;return a("p-tag p-component",p(p({},"p-tag-".concat(t.severity),null!==t.severity),"p-tag-rounded",t.rounded))}},styles:"\n@layer primereact {\n .p-tag {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n }\n \n .p-tag-icon,\n .p-tag-value,\n .p-tag-icon.pi {\n line-height: 1.5;\n }\n \n .p-tag.p-tag-rounded {\n border-radius: 10rem;\n }\n}\n"}});function m(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function f(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?m(Object(r),!0).forEach((function(t){p(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):m(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}var y=e.forwardRef((function(r,c){var l=o(),u=e.useContext(t),p=s.getProps(r,u),m=s.setMetaData({props:p}),y=m.ptm,b=m.cx;n(s.css.styles,m.isUnstyled,{name:"tag"});var g=e.useRef(null),v=l({className:b("icon")},y("icon")),d=i.getJSXIcon(p.icon,f({},v),{props:p});e.useImperativeHandle(c,(function(){return{props:p,getElement:function(){return g.current}}}));var O=l({ref:g,className:a(p.className,b("root")),style:p.style},s.getOtherProps(p),y("root")),j=l({className:b("value")},y("value"));return e.createElement("span",O,d,e.createElement("span",j,p.value),e.createElement("span",null,p.children))}));y.displayName="Tag";export{y as Tag};