@ebay/ui-core-react
Version:
Skin components build off React
2 lines (1 loc) • 2.39 kB
JavaScript
;Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const b=require("../tslib.es6-C4EgNkz1.js"),t=require("react"),$=require("classnames"),E=require("../notice-content-C0ZStfuX.js"),F=require("../notice-content-9iF4T8uB.js"),d=require("../icon-CR8ApQBy.js"),j=require("../random-id-DlJj_RWH.js"),v=require("../utils-C9NL3q0j.js"),N=require("../notice-footer-G6VPjVZu.js"),O=require("../notice-cta-CKl_qBge.js"),k=n=>{var{status:e="general",children:i,className:a,"aria-label":o,"aria-roledescription":p="Notice",a11yDismissText:l,educationIcon:C,iconClass:S,prominent:h,onDismiss:f=()=>{}}=n,g=b.__rest(n,["status","children","className","aria-label","aria-roledescription","a11yDismissText","educationIcon","iconClass","prominent","onDismiss"]);const[q,T]=t.useState(!1),[m,I]=t.useState("");t.useEffect(()=>{I(j.randomId())},[]);const u=v.findComponent(i,E.EbayNoticeContent),c=e!=="general"&&e!=="none",r=e==="education";let s=null;if(c&&(r?s=C||"lightbulb24":s=`${e}Filled16`),!u)throw new Error("EbaySectionNotice: Please use a EbayNoticeContent that defines the content of the notice");const D=_=>{T(!0),f(_)};return q?null:t.createElement("section",Object.assign({},g,{className:$(a,"section-notice",{[`section-notice--${e}`]:c,"section-notice--education":r&&h,"section-notice--large-icon":r}),"aria-label":c?null:o,"aria-labelledby":c?`section-notice-${e}-${m}`:null,"aria-roledescription":p}),s&&t.createElement("div",{className:"section-notice__header",id:`section-notice-${e}-${m}`},t.createElement(d.EbayIcon,{className:S,name:s,a11yText:o,a11yVariant:"label"})),t.createElement(F.NoticeContent,Object.assign({},u.props,{type:"section"})),i,l&&t.createElement(y,null,t.createElement("button",{"aria-label":l,className:"fake-link page-notice__dismiss",onClick:D},t.createElement(d.EbayIcon,{name:"close16"}))))},x=n=>{var{className:e,as:i,children:a}=n,o=b.__rest(n,["className","as","children"]);return t.createElement(N.NoticeTitle,Object.assign({},o,{className:e,as:i,type:"section"}),a)},y=({className:n,children:e})=>t.createElement(N.NoticeFooter,{className:n,type:"section"},e),A=({className:n,children:e})=>t.createElement(O.NoticeCTA,{className:n,type:"section"},e);exports.EbayNoticeContent=E.EbayNoticeContent;exports.EbaySectionNotice=k;exports.EbaySectionNoticeCTA=A;exports.EbaySectionNoticeFooter=y;exports.EbaySectionNoticeTitle=x;