@ebay/ui-core-react 7.0.2 → 7.1.0-alpha.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/array.polyfill.flat-5BAolFdk.js +1 -0
- package/badge-CoHKfiPt.js +1 -0
- package/button-o4ao46WM.js +1 -0
- package/calendar-CPKqwJVQ.js +1 -0
- package/debounce-BQsYxxOL.js +1 -0
- package/dialog-previous-button-7ePoYWyj.js +1 -0
- package/drawer-BxxlJwkZ.js +1 -0
- package/ebay-alert-dialog.js +1 -0
- package/ebay-badge.js +1 -0
- package/ebay-breadcrumbs.js +1 -0
- package/ebay-button.js +1 -0
- package/ebay-calendar.js +1 -0
- package/ebay-carousel.js +1 -0
- package/ebay-checkbox.js +1 -0
- package/ebay-confirm-dialog.js +1 -0
- package/ebay-cta-button.js +1 -0
- package/ebay-date-textbox.js +1 -0
- package/ebay-dialog-base.js +1 -0
- package/ebay-drawer-dialog.js +1 -0
- package/ebay-eek.js +1 -0
- package/ebay-fake-menu-button.js +1 -0
- package/ebay-fake-menu.js +1 -0
- package/ebay-fake-tabs.js +1 -0
- package/ebay-field.js +1 -0
- package/ebay-fullscreen-dialog.js +1 -0
- package/ebay-icon-button.js +1 -0
- package/ebay-icon.js +1 -0
- package/ebay-infotip.js +1 -0
- package/ebay-inline-notice.js +1 -0
- package/ebay-lightbox-dialog.js +1 -0
- package/ebay-listbox-button.js +2 -0
- package/ebay-menu/menu.d.ts +1 -1
- package/ebay-menu/menu.d.ts.map +1 -1
- package/ebay-menu-button.js +1 -0
- package/ebay-menu.js +1 -0
- package/ebay-notice-base.js +1 -0
- package/ebay-page-notice.js +1 -0
- package/ebay-pagination.js +1 -0
- package/ebay-panel-dialog.js +1 -0
- package/ebay-progress-bar.js +1 -0
- package/ebay-progress-spinner.js +1 -0
- package/ebay-progress-stepper.js +1 -0
- package/ebay-radio.js +1 -0
- package/ebay-section-notice.js +1 -0
- package/ebay-section-title/index.d.ts.map +1 -1
- package/ebay-section-title.js +1 -0
- package/ebay-select.js +1 -0
- package/ebay-signal.js +1 -0
- package/ebay-snackbar-dialog.js +1 -0
- package/ebay-split-button.js +1 -0
- package/ebay-star-rating-select.js +1 -0
- package/ebay-star-rating.js +1 -0
- package/ebay-svg.js +1 -0
- package/ebay-switch.js +1 -0
- package/ebay-tabs.js +1 -0
- package/ebay-textbox.js +1 -0
- package/ebay-toast-dialog.js +1 -0
- package/ebay-tooltip.js +1 -0
- package/ebay-tourtip.js +1 -0
- package/ebay-video.js +1 -0
- package/hooks-Ctier7Yv.js +1 -0
- package/icon-DK6eEQD8.js +1 -0
- package/icon-button-BB6GFLm7.js +1 -0
- package/index-DbjwTbDP.js +1 -0
- package/label-CnrpYJ-g.js +1 -0
- package/menu-DZU8jEPV.js +1 -0
- package/menu-button-label-BcgasGA4.js +1 -0
- package/menu-item-DBi1NcrM.js +1 -0
- package/notice-content-9iF4T8uB.js +1 -0
- package/notice-content-C0ZStfuX.js +1 -0
- package/notice-footer-Cw1DMzoB.js +1 -0
- package/package.json +19 -8
- package/progress-spinner-CDgxI8R_.js +1 -0
- package/range-DOsPN0h5.js +1 -0
- package/textbox-WnB-9F4y.js +1 -0
- package/use-tooltip-BavqG36Z.js +1 -0
- package/utils-C9NL3q0j.js +1 -0
- package/common/component-utils/array.polyfill.flat.js +0 -32
- package/common/component-utils/forwardRef.js +0 -37
- package/common/component-utils/index.js +0 -18
- package/common/component-utils/usePrevious.js +0 -12
- package/common/component-utils/utils.js +0 -26
- package/common/debounce.js +0 -11
- package/common/event-utils/index.js +0 -123
- package/common/event-utils/types.js +0 -14
- package/common/event-utils/use-key-press.js +0 -33
- package/common/event-utils/use-roving-index.js +0 -35
- package/common/floating-label-utils/hooks.js +0 -133
- package/common/notice-utils/notice-content.js +0 -12
- package/common/notice-utils/notice-cta.js +0 -23
- package/common/notice-utils/notice-footer.js +0 -23
- package/common/notice-utils/notice-title.js +0 -24
- package/common/random-id.js +0 -5
- package/common/range.js +0 -5
- package/common/tooltip-utils/constants.js +0 -95
- package/common/tooltip-utils/index.js +0 -19
- package/common/tooltip-utils/tooltip-close-button.js +0 -8
- package/common/tooltip-utils/tooltip-content.js +0 -25
- package/common/tooltip-utils/tooltip-footer.js +0 -9
- package/common/tooltip-utils/tooltip-host.js +0 -24
- package/common/tooltip-utils/tooltip.js +0 -60
- package/common/tooltip-utils/types.js +0 -2
- package/common/tooltip-utils/use-tooltip.js +0 -27
- package/ebay-alert-dialog/alert-dialog.js +0 -55
- package/ebay-alert-dialog/index.js +0 -8
- package/ebay-badge/badge.js +0 -25
- package/ebay-badge/index.js +0 -8
- package/ebay-breadcrumbs/breadcrumb-item.js +0 -27
- package/ebay-breadcrumbs/breadcrumbs.js +0 -64
- package/ebay-breadcrumbs/index.js +0 -10
- package/ebay-button/button-cell.js +0 -29
- package/ebay-button/button-expand.js +0 -13
- package/ebay-button/button-loading.js +0 -11
- package/ebay-button/button-text.js +0 -9
- package/ebay-button/button.js +0 -95
- package/ebay-button/index.js +0 -10
- package/ebay-button/types.js +0 -2
- package/ebay-calendar/calendar.js +0 -306
- package/ebay-calendar/date-utils.js +0 -58
- package/ebay-calendar/index.js +0 -8
- package/ebay-carousel/carousel-control-button.js +0 -24
- package/ebay-carousel/carousel-item.js +0 -59
- package/ebay-carousel/carousel-list.js +0 -81
- package/ebay-carousel/carousel.js +0 -109
- package/ebay-carousel/helpers.js +0 -123
- package/ebay-carousel/index.js +0 -10
- package/ebay-carousel/scroll-to-transition.js +0 -102
- package/ebay-carousel/types.js +0 -2
- package/ebay-checkbox/checkbox.js +0 -77
- package/ebay-checkbox/index.js +0 -8
- package/ebay-confirm-dialog/confirm-dialog.js +0 -56
- package/ebay-confirm-dialog/index.js +0 -8
- package/ebay-cta-button/cta-button.js +0 -30
- package/ebay-cta-button/index.js +0 -8
- package/ebay-date-textbox/date-textbox.js +0 -179
- package/ebay-date-textbox/index.js +0 -8
- package/ebay-dialog-base/components/animation.js +0 -96
- package/ebay-dialog-base/components/dialog-actions.js +0 -8
- package/ebay-dialog-base/components/dialog-close-button.js +0 -8
- package/ebay-dialog-base/components/dialog-footer.js +0 -8
- package/ebay-dialog-base/components/dialog-header.js +0 -22
- package/ebay-dialog-base/components/dialog-previous-button.js +0 -24
- package/ebay-dialog-base/components/dialogBase.js +0 -152
- package/ebay-dialog-base/dialog-base-with-state.js +0 -63
- package/ebay-dialog-base/index.js +0 -18
- package/ebay-drawer-dialog/components/drawer.js +0 -104
- package/ebay-drawer-dialog/index.js +0 -8
- package/ebay-eek/eek-rating.js +0 -23
- package/ebay-eek/eek-util.js +0 -34
- package/ebay-eek/index.js +0 -8
- package/ebay-fake-menu/index.js +0 -12
- package/ebay-fake-menu/menu-item-separator.js +0 -23
- package/ebay-fake-menu/menu-item.js +0 -72
- package/ebay-fake-menu/menu.js +0 -57
- package/ebay-fake-menu-button/index.js +0 -14
- package/ebay-fake-menu-button/menu-button-item.js +0 -5
- package/ebay-fake-menu-button/menu-button-label.js +0 -8
- package/ebay-fake-menu-button/menu-button-separator.js +0 -23
- package/ebay-fake-menu-button/menu-button.js +0 -105
- package/ebay-fake-tabs/fake-tabs.js +0 -54
- package/ebay-fake-tabs/index.js +0 -10
- package/ebay-fake-tabs/tab.js +0 -24
- package/ebay-field/description.js +0 -26
- package/ebay-field/field.js +0 -12
- package/ebay-field/index.js +0 -12
- package/ebay-field/label.js +0 -29
- package/ebay-field/types.js +0 -2
- package/ebay-fullscreen-dialog/fullscreen-dialog.js +0 -25
- package/ebay-fullscreen-dialog/index.js +0 -8
- package/ebay-icon/icon.js +0 -98
- package/ebay-icon/index.js +0 -8
- package/ebay-icon/types.js +0 -3
- package/ebay-icon-button/icon-button.js +0 -40
- package/ebay-icon-button/index.js +0 -8
- package/ebay-infotip/ebay-infotip-content.js +0 -12
- package/ebay-infotip/ebay-infotip-heading.js +0 -23
- package/ebay-infotip/ebay-infotip-host.js +0 -28
- package/ebay-infotip/ebay-infotip.js +0 -79
- package/ebay-infotip/index.js +0 -14
- package/ebay-infotip/types.js +0 -2
- package/ebay-inline-notice/index.js +0 -10
- package/ebay-inline-notice/inline-notice.js +0 -66
- package/ebay-inline-notice/types.js +0 -2
- package/ebay-lightbox-dialog/index.js +0 -8
- package/ebay-lightbox-dialog/lightbox-dialog.js +0 -27
- package/ebay-listbox-button/index.js +0 -10
- package/ebay-listbox-button/listbox-button-option.js +0 -27
- package/ebay-listbox-button/listbox-button.js +0 -252
- package/ebay-menu/index.js +0 -27
- package/ebay-menu/menu-item-separator.js +0 -23
- package/ebay-menu/menu-item.js +0 -67
- package/ebay-menu/menu.js +0 -149
- package/ebay-menu/types.js +0 -2
- package/ebay-menu-button/index.js +0 -29
- package/ebay-menu-button/menu-button-item.js +0 -5
- package/ebay-menu-button/menu-button-label.js +0 -8
- package/ebay-menu-button/menu-button-separator.js +0 -23
- package/ebay-menu-button/menu-button.js +0 -132
- package/ebay-menu-button/types.js +0 -2
- package/ebay-notice-base/components/ebay-notice-content/index.js +0 -8
- package/ebay-notice-base/components/ebay-notice-content/notice-content.js +0 -4
- package/ebay-notice-base/components/ebay-notice-title/index.js +0 -8
- package/ebay-notice-base/components/ebay-notice-title/notice-title.js +0 -8
- package/ebay-notice-base/index.js +0 -7
- package/ebay-page-notice/index.js +0 -16
- package/ebay-page-notice/page-notice-cta.js +0 -9
- package/ebay-page-notice/page-notice-footer.js +0 -9
- package/ebay-page-notice/page-notice-title.js +0 -23
- package/ebay-page-notice/page-notice.js +0 -66
- package/ebay-pagination/const.js +0 -8
- package/ebay-pagination/helpers.js +0 -92
- package/ebay-pagination/index.js +0 -10
- package/ebay-pagination/pagination-item.js +0 -55
- package/ebay-pagination/pagination.js +0 -146
- package/ebay-pagination/types.js +0 -2
- package/ebay-panel-dialog/index.js +0 -8
- package/ebay-panel-dialog/panel-dialog.js +0 -27
- package/ebay-progress-bar/index.js +0 -8
- package/ebay-progress-bar/progress-bar.js +0 -23
- package/ebay-progress-spinner/index.js +0 -8
- package/ebay-progress-spinner/progress-spinner.js +0 -35
- package/ebay-progress-stepper/ebay-progress-step.js +0 -64
- package/ebay-progress-stepper/ebay-progress-stepper.js +0 -70
- package/ebay-progress-stepper/ebay-progress-title.js +0 -5
- package/ebay-progress-stepper/index.js +0 -12
- package/ebay-progress-stepper/types.js +0 -2
- package/ebay-radio/index.js +0 -8
- package/ebay-radio/radio.js +0 -71
- package/ebay-section-notice/index.js +0 -14
- package/ebay-section-notice/section-notice-footer.js +0 -9
- package/ebay-section-notice/section-notice-title.js +0 -23
- package/ebay-section-notice/section-notice.js +0 -82
- package/ebay-section-title/cta.js +0 -26
- package/ebay-section-title/index.js +0 -16
- package/ebay-section-title/info.js +0 -23
- package/ebay-section-title/overflow.js +0 -23
- package/ebay-section-title/section-title.js +0 -35
- package/ebay-section-title/subtitle.js +0 -23
- package/ebay-section-title/title.js +0 -23
- package/ebay-select/ebay-select-option.js +0 -22
- package/ebay-select/ebay-select.js +0 -129
- package/ebay-select/index.js +0 -10
- package/ebay-signal/index.js +0 -8
- package/ebay-signal/signal.js +0 -24
- package/ebay-snackbar-dialog/components/ebay-snackbar-dialog-action.js +0 -24
- package/ebay-snackbar-dialog/components/ebay-snackbar-dialog.js +0 -122
- package/ebay-snackbar-dialog/index.js +0 -7
- package/ebay-split-button/index.js +0 -23
- package/ebay-split-button/split-button.js +0 -30
- package/ebay-split-button/types.js +0 -2
- package/ebay-star-rating/index.js +0 -23
- package/ebay-star-rating/star-rating.js +0 -26
- package/ebay-star-rating-select/index.js +0 -23
- package/ebay-star-rating-select/star-rating-select.js +0 -82
- package/ebay-svg/index.js +0 -8
- package/ebay-svg/svg.js +0 -2548
- package/ebay-switch/ebay-switch.js +0 -61
- package/ebay-switch/index.js +0 -8
- package/ebay-tabs/index.js +0 -12
- package/ebay-tabs/tab-panel.js +0 -24
- package/ebay-tabs/tab.js +0 -24
- package/ebay-tabs/tabs.js +0 -90
- package/ebay-tabs/types.js +0 -2
- package/ebay-textbox/index.js +0 -16
- package/ebay-textbox/postfix-icon.js +0 -26
- package/ebay-textbox/postfix-text.js +0 -8
- package/ebay-textbox/prefix-icon.js +0 -23
- package/ebay-textbox/prefix-text.js +0 -8
- package/ebay-textbox/textbox.js +0 -147
- package/ebay-textbox/types.js +0 -2
- package/ebay-toast-dialog/components/toast.js +0 -26
- package/ebay-toast-dialog/index.js +0 -8
- package/ebay-tooltip/ebay-tooltip-content.js +0 -8
- package/ebay-tooltip/ebay-tooltip-host.js +0 -8
- package/ebay-tooltip/ebay-tooltip.js +0 -85
- package/ebay-tooltip/index.js +0 -14
- package/ebay-tourtip/ebay-tourtip-content.js +0 -8
- package/ebay-tourtip/ebay-tourtip-footer.js +0 -10
- package/ebay-tourtip/ebay-tourtip-heading.js +0 -24
- package/ebay-tourtip/ebay-tourtip-host.js +0 -8
- package/ebay-tourtip/ebay-tourtip.js +0 -70
- package/ebay-tourtip/index.js +0 -18
- package/ebay-video/const.js +0 -19
- package/ebay-video/controls.js +0 -40
- package/ebay-video/index.js +0 -25
- package/ebay-video/reportButton.js +0 -12
- package/ebay-video/source.js +0 -22
- package/ebay-video/types.js +0 -2
- package/ebay-video/video.js +0 -210
package/ebay-switch.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("react"),b=require("classnames"),o=s=>typeof s<"u",w=({id:s,value:i,name:r,className:u,checked:e,defaultChecked:h=!1,onChange:d=()=>{},...m})=>{const[a,c]=t.useState(h);t.useEffect(()=>{c(!!e)},[e]);const p=n=>{const{value:f="",checked:l=!1}=n.target||{};d(n,{value:f,checked:l}),c(l)};return t.createElement("span",{className:"switch"},t.createElement("input",{...m,className:b("switch__control",u),id:s,role:"switch",type:"checkbox",value:i,"aria-checked":o(e)?e:a,checked:o(e)?e:a,name:r,onChange:p}),t.createElement("span",{className:"switch__button"}))};exports.EbaySwitch=w;
|
package/ebay-tabs.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("react"),i=require("classnames"),x=require("./index-DbjwTbDP.js"),E=require("./utils-C9NL3q0j.js"),_=({children:l,index:c,parentId:n,selected:o,focused:r,className:d,refCallback:m,...b})=>a.createElement("div",{...b,ref:m,"aria-controls":`${n||"default"}-tabpanel-${c}`,"aria-selected":o,className:i(d,"tabs__item"),id:`${n||"default"}-tab-${c}`,role:"tab",tabIndex:r?0:-1},a.createElement("span",null,l)),h=({children:l,index:c,parentId:n,selected:o,className:r,...d})=>a.createElement("div",{...d,"aria-labelledby":`default-tab-${c}`,className:i(r,"tabs__panel"),id:`${n||"default"}-tabpanel-${c}`,role:"tabpanel",hidden:!o},a.createElement("div",{className:"tabs__cell"},l)),D=({id:l,className:c,index:n=0,size:o="medium",activation:r="auto",onSelect:d=()=>{},onTabSelect:m=()=>{},children:b})=>{const I=[],[f,N]=a.useState(n),[p,T]=a.useState(n),u=e=>{d({selectedIndex:e}),m(e),N(e)},w=(e,t)=>{x.handleActionKeydown(e,()=>{e.preventDefault(),r==="manual"&&u(t)}),x.handleLeftRightArrowsKeydown(e,()=>{var g;e.preventDefault();const s=E.filterByType(b,_).length,q=["Left","ArrowLeft"].includes(e.key)?-1:1,y=((p===void 0?f:p)+s+q)%s;T(y),(g=I[y])==null||g.focus(),r!=="manual"&&u(y)})};a.useEffect(()=>{u(n)},[n]);const S=o==="large",v=E.filterByType(b,_).map((e,t)=>a.cloneElement(e,{...e.props,refCallback:s=>{I[t]=s},index:t,parentId:l,selected:f===t,focused:p===t,onClick:()=>{u(t),T(t)},onKeyDown:s=>{w(s,t)}})),P=E.filterByType(b,h).map((e,t)=>{const s={index:t,parentId:l,selected:f===t,children:e.props.children};return a.cloneElement(e,s)});return a.createElement("div",{id:l,className:i(c,"tabs")},a.createElement("div",{className:i("tabs__items",{"tabs__items--large":S}),role:"tablist"},v),a.createElement("div",{className:"tabs__content"},P))};exports.EbayTab=_;exports.EbayTabPanel=h;exports.EbayTabs=D;
|
package/ebay-textbox.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const x=require("./textbox-WnB-9F4y.js");exports.EbayTextbox=x.EbayTextbox;exports.EbayTextboxPostfixIcon=x.EbayTextboxPostfixIcon;exports.EbayTextboxPostfixText=x.EbayTextboxPostfixText;exports.EbayTextboxPrefixIcon=x.EbayTextboxPrefixIcon;exports.EbayTextboxPrefixText=x.EbayTextboxPrefixText;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("react"),s=require("classnames"),i=require("./dialog-previous-button-7ePoYWyj.js");require("./icon-button-BB6GFLm7.js");const r=({className:t,onClose:e=()=>{},...o})=>a.createElement(i.DialogBaseWithState,{...o,isModal:!1,baseEl:"aside",classPrefix:"toast-dialog",buttonPosition:"right",transitionElement:"root",className:s(t,"toast-dialog--transition"),onCloseBtnClick:e});exports.EbayToast=r;
|
package/ebay-tooltip.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react"),u=require("./utils-C9NL3q0j.js"),t=require("./use-tooltip-BavqG36Z.js");require("classnames");require("./icon-DK6eEQD8.js");require("./array.polyfill.flat-5BAolFdk.js");const c=()=>null,T=()=>null,g=({className:E,pointer:y,overlayStyle:f,noHover:l,onFocus:h=()=>{},onBlur:b=()=>{},onMouseEnter:d=()=>{},onMouseLeave:m=()=>{},onExpand:q,onCollapse:C,children:i,...M})=>{const{isExpanded:O,expandTooltip:s,collapseTooltip:r}=t.useTooltip({onCollapse:C,onExpand:q}),n=e.useRef(),w=o=>{d(o),l||(clearTimeout(n.current),s())},H=o=>{m(o),l||(clearTimeout(n.current),n.current=setTimeout(()=>{r()},300))},P=o=>{h(o),s()},R=o=>{b(o),r()},p=u.findComponent(i,c),a=u.findComponent(i,T);if(!a)throw new Error("EbayTooltip: Please use a EbayTooltipHost that defines the host of the tooltip");if(!p)throw new Error("EbayTooltip: Please use a EbayTooltipContent that defines the content of the tooltip");return e.createElement(t.Tooltip,{...M,className:E,type:"tooltip",isExpanded:O,onFocus:P,onBlur:R,onMouseEnter:w,onMouseLeave:H},e.createElement(t.TooltipHost,{...a.props}),e.createElement(t.TooltipContent,{...p.props,type:"tooltip",style:f,pointer:y}))};exports.Tooltip=t.Tooltip;exports.EbayTooltip=g;exports.EbayTooltipContent=c;exports.EbayTooltipHost=T;
|
package/ebay-tourtip.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("react"),i=require("./utils-C9NL3q0j.js"),n=require("./use-tooltip-BavqG36Z.js"),F=require("classnames");require("./icon-DK6eEQD8.js");require("./array.polyfill.flat-5BAolFdk.js");const T=()=>null,d=()=>null,y=({index:e,children:r})=>t.createElement(t.Fragment,null,e!==void 0&&t.createElement("span",{className:"tourtip__index"},e),r),f=({as:e,children:r,className:a,...o})=>{const s=e||"h2";return t.createElement(s,{...o,className:F("tourtip__heading",a)},r)},P=({a11yCloseText:e,"aria-label":r,className:a,children:o,onCollapse:s,onExpand:b,overlayStyle:m,pointer:h,...C})=>{const p=t.useRef(),{isExpanded:u,collapseTooltip:g}=n.useTooltip({onExpand:b,onCollapse:s,initialExpanded:!0,hostRef:p}),H=t.useRef(),l=i.findComponent(o,T);if(!l)throw new Error("EbayTourtip: Please use a EbayTourtipContent that defines the content of the tourtip");const{children:q,contentProps:w}=l.props,c=i.findComponent(o,d);if(!c)throw new Error("EbayTourtip: Please use a EbayTourtipHost that defines the host of the tourtip");const R=i.findComponent(o,f),E=i.findComponent(o,y);return t.createElement(n.Tooltip,{...C,className:a,type:"tourtip",isExpanded:u,ref:H},t.createElement(n.TooltipHost,{...c.props,forwardedRef:p,"aria-label":r,"aria-expanded":u}),t.createElement(n.TooltipContent,{...w,a11yCloseText:e,onClose:g,pointer:h,showCloseButton:!0,style:m,type:"tourtip"},R,q,E&&t.createElement(n.TooltipFooter,{type:"tourtip"},E)))};exports.Tooltip=n.Tooltip;exports.EbayTourtip=P;exports.EbayTourtipContent=T;exports.EbayTourtipFooter=y;exports.EbayTourtipHeading=f;exports.EbayTourtipHost=d;
|
package/ebay-video.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var U=Object.defineProperty;var X=(n,r,a)=>r in n?U(n,r,{enumerable:!0,configurable:!0,writable:!0,value:a}):n[r]=a;var T=(n,r,a)=>X(n,typeof r!="symbol"?r+"":r,a);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react"),b=require("classnames"),d=require("shaka-player/dist/shaka-player.ui"),Z=require("./utils-C9NL3q0j.js"),R=require("./icon-DK6eEQD8.js"),ee=require("./progress-spinner-CDgxI8R_.js"),te=require("react-dom/client"),w=({...n})=>e.createElement("source",{...n}),ne=7e3,re=11,V={addBigPlayButton:!1,addSeekBar:!0,controlPanelElements:["play_pause","time_and_duration","spacer","mute","report","captions","fullscreen"]},ae=({callback:n,children:r})=>e.createElement("button",{className:"video-player__report-button",ref:n},e.createElement(R.EbayIcon,{name:"flag24"}),r);function oe(n=()=>{}){const r=class extends d.ui.Element{constructor(a,u,y){super(a,u);const i=document.createElement("div"),E=()=>{const m=i.firstChild;a.appendChild(m),i.remove(),this.eventManager.listen(m,"click",n)};te.createRoot(i).render(e.createElement(ae,{callback:E},y))}};return r.Factory=class{constructor(a){T(this,"reportText");this.reportText=a}create(a,u){return new r(a,u,this.reportText)}},{Report:r}}const le=({width:n,height:r,thumbnail:a,action:u,muted:y,playView:i="inline",a11yLoadText:E,a11yPlayText:m,reportText:_,volumeSlider:A,volume:x=1,hideReportButton:I,errorText:L,onVolumeChange:F=()=>{},onLoadError:M=()=>{},onPlay:z=()=>{},onReport:$=()=>{},children:j,...D})=>{const[P,v]=e.useState(),[S,H]=e.useState(),[k,W]=e.useState(),[h,C]=e.useState(),N=e.useRef(null),l=e.useRef(null),s=e.useRef(null),p=e.useRef(null),f=Z.filterByType(j,w).map(({props:t})=>t),B=t=>{v(!0),C(!0),M(t)},g=(t=0)=>{var o;!f.length||!s.current||(v(!1),s.current.load((o=f[t])==null?void 0:o.src).then(()=>{C(!1)}).catch(c=>{switch(console.error(c),c.code){case ne:return;case re:setTimeout(()=>g(t),0);break;default:{const q=f.length>t+1&&t+1;q?setTimeout(()=>g(q),0):B(c)}}}).finally(()=>{v(!0)}))};e.useEffect(()=>{const t=l.current,o=N.current;if(!(!t||!o)&&(t.volume=x,d.polyfill.installAll(),s.current=new d.Player(t),!!s.current)){if(s.current.addEventListener("error",B),s.current.addEventListener("buffering",c=>{H(c.buffering)}),p.current=new d.ui.Overlay(s.current,o,t,_),p.current.configure({addBigPlayButton:!0,controlPanelElements:[],addSeekBar:!1}),!I){const{Report:c}=oe($);d.ui.Controls.registerElement("report",new c.Factory(_))}g(),ce(o)}},[]),e.useEffect(()=>{switch(u){case"play":l.current.play();break;case"pause":l.current.pause();break}},[u]);const Y=()=>{if(!p.current)return;const t=A?{controlPanelElements:se(V.controlPanelElements)}:{};p.current.configure({...V,...t}),l.current.controls=!1},G=t=>{t.stopPropagation(),Y(),i==="fullscreen"&&l.current.requestFullscreen(),W(!0),z(t,{player:s.current})},J=()=>{l.current.play()},K=t=>{const o=t.currentTarget;F(t,{volume:Math.round((o.volume+Number.EPSILON)*100)/100,muted:o.muted})},Q=()=>{l.current.controls=!1},O={width:n?`${n}px`:void 0,height:r?`${r}px`:void 0};return e.createElement("div",{style:O,className:b("video-player",{"video-player--poster":!k})},!k&&P&&!h&&!S&&e.createElement("div",{className:"shaka-play-button-container"},e.createElement("button",{onClick:J,className:"shaka-play-button",style:{opacity:1,zIndex:999},"aria-label":m},e.createElement(R.EbayIcon,{name:"playFilled64Colored"}))),e.createElement("div",{className:"video-player__container",ref:N},e.createElement("video",{ref:l,style:O,poster:a,muted:y||!1,onPlaying:G,onPause:Q,onVolumeChange:K,...D},f.map((t,o)=>e.createElement("source",{key:o,...t})))),e.createElement("div",{className:b("video-player__overlay",{"video-player__overlay--hidden":!h})},e.createElement(R.EbayIcon,{name:"attention64"}),e.createElement("div",{className:"video-player__overlay-text"},L)),e.createElement("div",{className:b("video-player__overlay",{"video-player__overlay--hidden":P&&(h||!S)})},e.createElement(ee.EbayProgressSpinner,{size:"large","aria-label":E})))};function se(n){const r=n.length-2>0?n.length-2:n.length,a=[...n];return a.splice(r,0,"volume"),a}function ce(n){const r=n.querySelectorAll(".shaka-spinner")[0];r&&r.setAttribute("hidden","")}exports.EbayVideo=le;exports.EbayVideoSource=w;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";const o=require("react"),N=require("classnames"),n="floating-label__label",T=["rgb(245, 245, 245)","rgb(247, 247, 247)"],v=t=>t&&!T.includes(getComputedStyle(t).backgroundColor),g=t=>{var a;return((a=t==null?void 0:t.value)==null?void 0:a.length)>0},p=t=>(t==null?void 0:t.tagName)==="SELECT",f=(t,a)=>{if(p(t)&&!g(t.querySelector("option"))){t.style["min-width"]="";const l=t.offsetWidth;t.querySelector("option").text=a,!a&&l>t.offsetWidth&&(t.style["min-width"]=`${l}px`)}},G=t=>p(t)?t.querySelector("option").text:t==null?void 0:t.placeholder;function I({ref:t,inputId:a,className:l,disabled:q,label:c,inputSize:y,inputValue:d,placeholder:b,invalid:R,opaqueLabel:$,type:m,onMount:B=()=>{}}){const L=o.useRef(null),s=()=>t||L,[F,u]=o.useState(!!d),[k,h]=o.useState(!1),[i,C]=o.useState(!1),E=o.useRef(""),A=()=>{var e;h(!0),u(g((e=s())==null?void 0:e.current)),C(!1),f(s().current,"")},P=()=>{var e;h(!0),u(!0),C(!0),f((e=s())==null?void 0:e.current,E.current)};o.useEffect(()=>{var e,r;c&&(E.current=G((e=s())==null?void 0:e.current),f((r=s())==null?void 0:r.current,""),B())},[]),o.useEffect(()=>{var e,r,x;c&&u(i||g((e=s())==null?void 0:e.current)||v((x=(r=s())==null?void 0:r.current)==null?void 0:x.parentNode))},[i,d]);const W=N(l,n,{[`${n}--disabled`]:q,[`${n}--animate`]:k,[`${n}--inline`]:!F&&m!=="date",[`${n}--focus`]:i,[`${n}--invalid`]:R}),S=N("floating-label",{"floating-label--large":y==="large","floating-label--opaque":$}),_=o.useCallback(({children:e})=>o.createElement(o.Fragment,null,e),[]),w=o.useCallback(({children:e})=>o.createElement("span",{className:S},e),[S]);return c?{label:o.createElement("label",{htmlFor:a,className:W},c),Container:w,onBlur:A,onFocus:P,ref:s(),placeholder:F?b:null}:{label:null,Container:_,onBlur:()=>{},onFocus:()=>{},ref:s(),placeholder:b}}exports.useFloatingLabel=I;
|
package/icon-DK6eEQD8.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";const a=require("react"),I=require("classnames");require("./array.polyfill.flat-5BAolFdk.js");const h=t=>t.displayName||t.name||"Component",c=t=>{const e=a.forwardRef((n,r)=>a.createElement(t,{...n,forwardedRef:r}));return e.displayName=h(t),e},l=()=>Math.random().toString(16).slice(-4),p=({name:t,className:e,noSkinClasses:n=!1,a11yText:r,a11yVariant:d,forwardedRef:f,...m})=>{const[u,b]=a.useState("");a.useEffect(()=>{b(l())},[]);const o=d==="label",i=r&&`icon-title-${u}`,N=r?{"aria-labelledby":o?void 0:i,"aria-label":o?r:void 0,role:"img"}:{"aria-hidden":!0},s=R(t),w=["icon",`icon--${E(s)||s}`,y(s)].filter(Boolean).join(" "),g=I(e,{[w]:!n});return a.createElement("svg",{...m,className:g,xmlns:"http://www.w3.org/2000/svg",focusable:!1,ref:f,...N},r&&!o&&a.createElement("title",{id:i},r),a.createElement("use",{xlinkHref:`#icon-${s}`}))};function E(t){const e=t.split("-"),n=e[e.length-1];return n==="colored"?e[e.length-2]:isNaN(Number(n))?"":n}function y(t){const e=t.split("-"),n=e.indexOf("filled");return n===-1?"":`icon--${e.slice(0,n+1).join("-")}`}function R(t){return t.replace(/([0-9]+)/g,(e,n)=>`-${n}`).replace(/([A-Z])/g,(e,n)=>`-${n.toLowerCase()}`)}const $=c(p);exports.EbayIcon=$;exports.randomId=l;exports.withForwardRef=c;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";const e=require("react"),p=require("classnames"),y=require("./icon-DK6eEQD8.js"),w=require("./badge-CoHKfiPt.js");require("./array.polyfill.flat-5BAolFdk.js");const B=({href:c,icon:E,badgeNumber:a,badgeAriaLabel:m,transparent:b,className:q,forwardedRef:o,size:r,onEscape:$=()=>{},onKeyDown:k=()=>{},...s})=>{const n=c?"icon-link":"icon-btn",i=p(q,n,r&&`${n}--${r}`,{[`${n}--badged`]:a,[`${n}--transparent`]:b}),l=e.createElement(e.Fragment,null,e.createElement(y.EbayIcon,{name:E}),a&&e.createElement(w.EbayBadge,{type:"icon",number:a,"aria-label":m})),u=t=>{(t.key==="Escape"||t.key==="Esc")&&$(t),k(t)};return c?e.createElement("a",{ref:o,className:i,href:c,onKeyDown:u,...s},l):e.createElement("button",{ref:o,type:"button",className:i,onKeyDown:u,...s},l)},I=y.withForwardRef(B);exports.EbayIconButton=I;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";function t(n,e,o=()=>{}){n.includes(e.key)&&o()}function c(n,e){i(n.key)&&e()}function i(n){return[" ","Enter"].includes(n)}function d(n,e){t(["Esc","Escape"],n,e)}function r(n,e){t(["Left","ArrowLeft","Right","ArrowRight"],n,e)}exports.handleActionKeydown=c;exports.handleEscapeKeydown=d;exports.handleLeftRightArrowsKeydown=r;exports.isActionKey=i;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";const e=require("react"),d=require("classnames"),i=({className:l,children:a,stacked:s=!1,required:t=!1,position:r="start",...n})=>{const c=d("field__label",l,{"field__label--stacked":s},{"field__label--end":r==="end"}),u=t?e.createElement(e.Fragment,null," ",e.createElement("sup",null,"*")):null;return e.createElement("label",{className:c,...n},a,u)};exports.Label=i;
|
package/menu-DZU8jEPV.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";const t=require("react"),q=require("classnames"),B=require("./index-DbjwTbDP.js"),K=require("./icon-DK6eEQD8.js");require("./array.polyfill.flat-5BAolFdk.js");const N=require("./badge-CoHKfiPt.js"),O=()=>{const[l,c]=t.useState(!1),[k,o]=t.useState(!1),d=({key:u})=>{const a={ArrowUp:c,ArrowDown:o}[u];a&&a(!1)},f=({key:u})=>{const a={ArrowUp:c,ArrowDown:o}[u];a&&a(!0)};return t.useEffect(()=>(window.addEventListener("keydown",f),window.addEventListener("keyup",d),()=>{window.removeEventListener("keydown",f),window.removeEventListener("keyup",d)}),[]),[l,k]},H=(l,c,k)=>{const[o,d]=t.useState(k),[f,u]=O(),a=t.Children.toArray(l).reduce((s,I,p)=>I.type===c?[...s,p]:s,[]),m=a.indexOf(o),E=()=>{if(m===-1)return o;const s=a[m-1];return s===void 0?o:s},w=()=>{if(m===-1)return o;const s=a[m+1];return s===void 0?o:s};return t.useEffect(()=>{f&&d(E()),u&&d(w())},[f,u]),[o,d]},M=({className:l,checked:c,type:k,focused:o=!1,tabIndex:d,disabled:f,badgeNumber:u,badgeAriaLabel:a,children:m,...E})=>{const w=t.useRef(null),s=u!==void 0;t.useEffect(()=>{w.current&&o&&w.current.focus()},[w,o]);const I=["radio","checkbox"];return t.createElement("div",{"aria-label":a,...E,ref:w,className:q(l,"menu__item",s&&"menu__item--badged"),role:T(k),"aria-checked":I.includes(k)?c:void 0,"aria-disabled":f,tabIndex:o?0:d},t.createElement("span",{"aria-hidden":s},m,s&&t.createElement(N.EbayBadge,{type:"menu",number:u})),t.createElement(K.EbayIcon,{name:"tick16"}))};function T(l){return{radio:"menuitemradio",checkbox:"menuitemcheckbox"}[l]||"menuitem"}const j=({baseEl:l="span",type:c,priority:k="secondary",checked:o,className:d,autofocus:f,onClick:u=()=>{},onKeyDown:a=()=>{},onChange:m=()=>{},onSelect:E=()=>{},forwardedRef:w,children:s,...I})=>{const p=t.Children.toArray(s),[g,A]=H(s,M,f===!0?0:void 0),[v,P]=t.useState(p.map(()=>!1)),U=n=>p.reduce((e,r,h)=>n[h]?[...e,r.props.value]:e,[]),D=n=>n.reduce((e,r,h)=>r?[...e,h]:e,[]),C=(n,e)=>({index:n,checked:D(e)}),F=(n,e)=>({...C(n,e),indexes:D(e),checkedValues:U(e)}),R=(n,e,r=!1)=>{let h=!1;const y=v.map((x,i)=>{const V=r?!1:x;return n===i?(x!==e&&(h=!0),e):V});if(h)return P(y),y},b=n=>{switch(c){case"radio":return R(n,!0,!0);case"checkbox":return R(n,!v[n],!1);default:return v.map((e,r)=>r===n)}};t.useEffect(()=>{if(c==="radio")if(o===void 0){const n=p.findIndex(e=>e.props.checked);n>-1&&b(n)}else b(o);else c==="checkbox"&&P(p.map(n=>!!n.props.checked))},[]);const _=(n,e,r)=>{switch(c){case"radio":case"checkbox":return m(n,F(e,r));default:return E(n,C(e,r))}},L=(n,e)=>{let r;switch(B.isActionKey(n.key)&&(r=b(e),r&&_(n,e,r)),c){case"radio":case"checkbox":return a(n,F(e,r||v));default:return a(n,C(e,r||v))}},S=(n,e)=>{A(e);const r=b(e);r&&_(n,e,r)};return t.createElement(l,{...I,className:q(d,"menu")},t.createElement("div",{className:"menu__items",role:"menu",ref:w},p.map((n,e)=>{const{onClick:r=()=>{},onFocus:h=()=>{},onKeyDown:y=()=>{},...x}=n.props;return t.cloneElement(n,{...x,type:c,focused:e===g,tabIndex:g===void 0?0:-1,checked:v[e],onFocus:i=>{A(e),h(i)},onClick:i=>{S(i,e),r(i),u(i)},onKeyDown:i=>{L(i,e),y(i)}})})))},z=K.withForwardRef(j);exports.EbayMenu=z;exports.EbayMenuItem=M;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";const e=require("react"),s=require("classnames"),m=require("./utils-C9NL3q0j.js"),D=require("./index-DbjwTbDP.js"),p=require("./icon-DK6eEQD8.js"),R=require("./button-o4ao46WM.js"),z=require("./icon-button-BB6GFLm7.js"),y=require("./menu-item-DBi1NcrM.js"),H=({a11yText:o,noToggleIcon:r,fixWidth:_,reverse:I,variant:i,expanded:q=!1,className:v,onCollapse:x=()=>{},onExpand:w=()=>{},onMouseDown:F=()=>{},onSelect:N=()=>{},text:d="",children:c,...C})=>{const[a,l]=e.useState(q),[b,S]=e.useState(),u=e.useRef(),f=m.findComponent(c,p.EbayIcon),h=m.findComponent(c,M)||(f?e.createElement("span",null,d):d),L=m.filterByType(c,[k,B]);e.useEffect(()=>{const n=t=>{u.current&&!u.current.contains(t.currentTarget)&&l(!1)};return a?(w(),setTimeout(()=>{document.addEventListener("click",n,!1)})):a===!1&&x(),()=>document.removeEventListener("click",n,!1)},[a]),e.useEffect(()=>{S(p.randomId())},[]);const g=n=>{D.handleEscapeKeydown(n,()=>{var t;l(!1),(t=u.current)==null||t.focus()})},K=s("fake-menu-button__menu",{"menu-button__menu--fix-width":_,"menu-button__menu--reverse":I}),E={ref:u,className:"fake-menu-button__button","aria-expanded":!!a,"aria-haspopup":!0,"aria-label":o,"aria-controls":b,onClick:()=>l(!a),...C};return e.createElement("span",{className:s("fake-menu-button",v)},i==="overflow"?e.createElement(z.EbayIconButton,{icon:"overflowHorizontal24",...E}):e.createElement(R.EbayButton,{variant:i==="form"?"form":void 0,bodyState:r?void 0:"expand",...E},f,h),a&&e.createElement(y.EbayFakeMenu,{className:K,id:b,tabIndex:-1,onKeyDown:g,onSelect:N},L.map((n,t)=>e.cloneElement(n,{...n.props,onMouseDown:T=>{F(T,{index:t})},className:s(n.props.className,"fake-menu-button__item"),key:t,autoFocus:t===0}))))},k=y.EbayMenuItem,B=({className:o,...r})=>e.createElement("hr",{...r,className:s(o,"menu-button__separator"),role:"separator"}),M=({children:o})=>e.createElement(e.Fragment,null,o);exports.EbayFakeMenuButtonItem=k;exports.EbayFakeMenuButtonLabel=M;exports.EbayMenuButton=H;exports.EbayMenuButtonSeparator=B;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";const e=require("react"),g=require("classnames"),p=require("./icon-DK6eEQD8.js"),k=require("./badge-CoHKfiPt.js"),v=({className:m,itemMatchesUrl:d=!0,onKeyDown:a=()=>{},onSelect:l=()=>{},children:E,...r})=>{const b=e.Children.toArray(E),c=d===!1?"true":"page";return e.createElement("div",{...r,className:g(m,"fake-menu")},e.createElement("ul",{className:"fake-menu__items",tabIndex:-1},b.map((s,t)=>{const{current:u,onClick:o=()=>{},...i}=s.props;return e.createElement("li",{key:t},e.cloneElement(s,{...i,"aria-current":u?c:void 0,onClick:n=>{l(n,{index:t}),o(n)},onKeyDown:n=>{a(n,{index:t})}}))})))},_=({className:m,current:d,disabled:a,autoFocus:l,type:E,badgeNumber:r,badgeAriaLabel:b,children:c,...s})=>{const t=e.useRef(),u=r!==void 0;e.useEffect(()=>{var f;l&&((f=t.current)==null||f.focus())});const o={...s,ref:t,className:g(m,"fake-menu__item",u&&"menu__item--badged"),"aria-label":b},i=e.createElement(p.EbayIcon,{name:"tick16"}),n={marginLeft:"var(--spacing-100)",marginRight:"var(--spacing-100)"},y=u&&e.createElement(k.EbayBadge,{type:"menu",number:r,style:n});return E==="button"?e.createElement("button",{...o,type:"button",disabled:a},e.createElement("span",null,c,y),i):e.createElement("a",{...o,"aria-disabled":a?"true":void 0},e.createElement("span",null,c,y),i)};exports.EbayFakeMenu=v;exports.EbayMenuItem=_;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";const s=require("react"),i=require("classnames"),o=({className:t,type:e,children:n})=>{const c=e==="inline"?"span":"div";return s.createElement(c,{className:i(t,`${e}-notice__main`)},n)};exports.NoticeContent=o;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";const t=()=>null;exports.EbayNoticeContent=t;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";const i=require("react"),s=require("classnames"),n=({className:e,type:t,as:c,children:o,...r})=>{const a=c||"h2";return i.createElement(a,{className:s(e,`${t}-notice__title`),...r},o)},l=({className:e,type:t,children:c,...o})=>i.createElement("div",{className:s(e,`${t}-notice__footer`),...o},c);exports.NoticeFooter=l;exports.NoticeTitle=n;
|
package/package.json
CHANGED
|
@@ -1,10 +1,17 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ebay/ui-core-react",
|
|
3
|
-
"version": "7.0.
|
|
3
|
+
"version": "7.1.0-alpha.3",
|
|
4
4
|
"description": "Skin components build off React",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"registry": "https://registry.npmjs.org"
|
|
7
7
|
},
|
|
8
|
+
"exports": {
|
|
9
|
+
"./package.json": "./package.json",
|
|
10
|
+
"./*": {
|
|
11
|
+
"types": "./*/index.d.ts",
|
|
12
|
+
"default": "./*.js"
|
|
13
|
+
}
|
|
14
|
+
},
|
|
8
15
|
"scripts": {
|
|
9
16
|
"clean": "node scripts/clean",
|
|
10
17
|
"lint": "eslint . --ext ts,tsx",
|
|
@@ -18,13 +25,14 @@
|
|
|
18
25
|
"build-storybook": "storybook build",
|
|
19
26
|
"storybook:publish": "NODE_OPTIONS=--openssl-legacy-provider yarn build-storybook --output-dir storybook-static/$(git branch --show-current) && gh-pages --add --message=\"Deploying to gh-pages from @ eBay/ebayui-core-react@$(git rev-parse --short HEAD) 🚀\" -d storybook-static",
|
|
20
27
|
"test": "yarn jest",
|
|
21
|
-
"build": "yarn
|
|
22
|
-
"
|
|
28
|
+
"build:tsc": "yarn tsc",
|
|
29
|
+
"build": "yarn type:check && vite build",
|
|
30
|
+
"type:check": "tsc --noEmit",
|
|
23
31
|
"update-icons": "node ./scripts/update-icons",
|
|
24
|
-
"copy": "copyfiles package.json README.md
|
|
25
|
-
"copy:rest": "yarn copyfiles -u 1 'src/**/*.md'
|
|
26
|
-
"release": "yarn build && yarn copy && CI=1 npm publish
|
|
27
|
-
"release:rc": "
|
|
32
|
+
"copy": "copyfiles package.json README.md dist; yarn copy:rest",
|
|
33
|
+
"copy:rest": "yarn copyfiles -u 1 'src/**/*.md' dist",
|
|
34
|
+
"release": "yarn clean && yarn build && yarn copy && CI=1 npm publish dist/ --access public",
|
|
35
|
+
"release:rc": "yarn clean && yarn build && yarn copy && CI=1 npm publish --tag rc dist/",
|
|
28
36
|
"prepare": "node scripts/husky-install || node ../scripts/husky-install"
|
|
29
37
|
},
|
|
30
38
|
"lint-staged": {
|
|
@@ -63,6 +71,7 @@
|
|
|
63
71
|
"@babel/register": "^7.0.0",
|
|
64
72
|
"@ebay/skin": "^18.0.0",
|
|
65
73
|
"@microsoft/eslint-formatter-sarif": "^3.0.0",
|
|
74
|
+
"@rollup/plugin-typescript": "^11.1.6",
|
|
66
75
|
"@storybook/addon-a11y": "^7.6.12",
|
|
67
76
|
"@storybook/addon-essentials": "^7.4.6",
|
|
68
77
|
"@storybook/addon-storysource": "^7.6.12",
|
|
@@ -101,13 +110,15 @@
|
|
|
101
110
|
"react": "^18",
|
|
102
111
|
"react-docgen-typescript-loader": "^3.7.2",
|
|
103
112
|
"react-dom": "^18",
|
|
113
|
+
"rollup-plugin-node-externals": "^7.1.3",
|
|
104
114
|
"shaka-player": "^4.3.2",
|
|
105
115
|
"storybook": "^7.5.1",
|
|
106
116
|
"style-loader": "^2.0.0",
|
|
107
117
|
"svgson": "^4.0.0",
|
|
108
118
|
"ts-jest": "^29.1.1",
|
|
109
119
|
"ts-loader": "^8.0.7",
|
|
110
|
-
"typescript": "4"
|
|
120
|
+
"typescript": "4",
|
|
121
|
+
"vite": "^5.4.7"
|
|
111
122
|
},
|
|
112
123
|
"resolutions": {
|
|
113
124
|
"@storybook/addon-actions": "~7.5.3",
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";const s=require("react"),l=require("classnames"),i=require("./icon-DK6eEQD8.js"),t={default:"",small:"progress-spinner--small",large:"progress-spinner--large"},c={default:"spinner24",small:"spinner20",large:"spinner30"},o=({size:e="default","aria-label":r="Busy",className:a,...n})=>s.createElement("span",{...n,className:l("progress-spinner",t[e],a),"aria-label":r,role:"img"},s.createElement(i.EbayIcon,{name:c[e]}));exports.EbayProgressSpinner=o;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";const l=(a,c,r=1)=>Array(Math.ceil((c+1-a)/r)).fill(a).map((e,i)=>e+i*r);exports.range=l;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";const t=require("react"),ue=require("classnames"),y=require("./icon-DK6eEQD8.js"),p=require("./utils-C9NL3q0j.js"),xe=require("./icon-button-BB6GFLm7.js"),be=require("./hooks-Ctier7Yv.js"),P=({name:n,buttonAriaLabel:a,onClick:c=()=>{},...r})=>a?t.createElement(xe.EbayIconButton,{"aria-label":a,icon:n,transparent:!0,onClick:c,...r}):t.createElement(y.EbayIcon,{name:n,...r}),B=n=>t.createElement("span",{...n}),w=({name:n,...a})=>t.createElement(y.EbayIcon,{name:n,...a}),F=n=>t.createElement("span",{...n}),E=n=>typeof n<"u",de=({type:n="text",invalid:a,fluid:c,multiline:r,onChange:N=()=>{},onInputChange:q=()=>{},onFocus:K=()=>{},onBlur:k=()=>{},onKeyPress:L=()=>{},onKeyUp:D=()=>{},onKeyDown:R=()=>{},onInvalid:U=()=>{},onFloatingLabelInit:_=()=>{},onButtonClick:j=()=>{},autoFocus:m,defaultValue:f="",value:i,forwardedRef:M,inputSize:I="default",floatingLabel:O,children:u,placeholder:S,opaqueLabel:V,...s})=>{var h,v;const[g,W]=t.useState(f),[C,$]=t.useState(f),{label:G,Container:H,onBlur:J,onFocus:Q,ref:X,placeholder:Y}=be.useFloatingLabel({ref:M,inputId:s.id,className:s.className,disabled:s.disabled,label:O,inputSize:I,inputValue:i||C,placeholder:S,invalid:a,type:n,opaqueLabel:V,onMount:_}),T=e=>{var o;K(e,{value:((o=e==null?void 0:e.target)==null?void 0:o.value)||f}),Q()},Z=e=>{var l;const o=(l=e.target)==null?void 0:l.value;k(e,{value:o}),o!==g&&(N(e,{value:o}),W(o)),J()},z=e=>{const o=e.target;L(e,{value:o==null?void 0:o.value})},A=e=>{const o=e.target;D(e,{value:o==null?void 0:o.value})},ee=e=>{const o=e.target;R(e,{value:o==null?void 0:o.value})},oe=e=>{const o=e.target;U(e,{value:o==null?void 0:o.value})},ne=e=>{j(e,{value:g})};t.useEffect(()=>{m&&T()},[]);const te=e=>{var l;const o=(l=e.target)==null?void 0:l.value;E(i)||$(o),q(e,{value:o})},ae=r?"textarea":"input",se=c?"div":"span",le=p.findComponent(u,w),x=p.findComponent(u,F),ce=(h=x==null?void 0:x.props)==null?void 0:h.id,b=p.findComponent(u,P),d=p.findComponent(u,B),re=(v=d==null?void 0:d.props)==null?void 0:v.id,ie=ue("textbox",s.className,{"textbox--fluid":c,"textbox--large":I==="large","textbox--disabled":s.disabled,"textbox--invalid":a,"textbox--readonly":s.readOnly});return t.createElement(H,null,G,t.createElement(se,{className:ie},le,x,t.createElement(ae,{"aria-describedby":[ce,re].filter(Boolean).join(" ")||void 0,...s,className:"textbox__control",type:n,"aria-invalid":a,value:E(i)?i:C,onChange:te,onBlur:Z,onFocus:T,onKeyPress:z,onKeyUp:A,onKeyDown:ee,onInvalid:oe,autoFocus:m,ref:X,placeholder:Y}),d,b&&t.cloneElement(b,{...b.props,onClick:e=>{const{onClick:o=()=>{}}=b.props;o(e),ne(e)}})))},pe=y.withForwardRef(de);exports.EbayTextbox=pe;exports.EbayTextboxPostfixIcon=P;exports.EbayTextboxPostfixText=B;exports.EbayTextboxPrefixIcon=w;exports.EbayTextboxPrefixText=F;exports.isControlled=E;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";const t=require("react"),d=require("classnames"),b=require("./icon-DK6eEQD8.js"),i=require("./utils-C9NL3q0j.js"),u=({children:o,className:e,forwardedRef:s,...a})=>(t.Children.only(o),t.cloneElement(o,{ref:s,...a,className:d(e,o.props.className)})),T=({className:o,type:e,isExpanded:s,children:a,forwardedRef:l,...c})=>{var m;const p=i.findComponent(a,u),r=i.excludeComponent(a,u)[0];if(!p)throw new Error("Tooltip: Please use a TooltipHost that defines the host of the tooltip");const n=t.cloneElement(p,{className:`${e}__host`,"aria-expanded":s,"aria-describedby":(m=r==null?void 0:r.props)==null?void 0:m.id,...p.props});return t.createElement("span",{...c,ref:l,className:d(o,e,{[`${e}--expanded`]:s})},n,r)},_=b.withForwardRef(T),E="bottom",g={tooltip:"tooltip",tourtip:"region",infotip:""},h={left:{transform:"translateX(16px) translateY(-50%) scale3d(1,1,1)",left:"100%",right:"auto",top:"-6px",bottom:"auto"},"left-top":{transform:"translateX(16px) scale3d(1,1,1)",left:"100%",right:"auto",top:"-100%",bottom:"auto"},"left-bottom":{transform:"translateX(16px) scale3d(1,1,1)",left:"100%",right:"auto",top:"auto",bottom:"-10px"},right:{transform:"translateX(-16px) translateY(-50%) scale3d(1,1,1)",left:"auto",right:"100%",top:"-6px",bottom:"auto"},"right-top":{transform:"translateX(-16px) scale3d(1,1,1)",left:"auto",right:"100%",top:"-100%",bottom:"auto"},"right-bottom":{transform:"translateX(-16px) scale3d(1,1,1)",left:"auto",right:"100%",top:"auto",bottom:"-50%"},top:{transform:"translateX(-50%) scale3d(1,1,1)",left:"50%",right:"auto",top:"calc(100% + 2px)",bottom:"auto"},"top-left":{transform:"scale3d(1,1,1)",left:"-10px",right:"auto",top:"calc(100% + 2px)",bottom:"auto"},"top-right":{transform:"scale3d(1,1,1)",left:"auto",right:"-10px",top:"calc(100% + 2px)",bottom:"auto"},"bottom-right":{transform:"scale3d(1,1,1)",left:"auto",right:"-10px",top:"auto",bottom:"calc(100% + 12px)"},"bottom-left":{transform:"scale3d(1,1,1)",left:"-10px",right:"auto",top:"auto",bottom:"calc(100% + 12px)"},bottom:{transform:"translateX(-50%) scale3d(1,1,1)",left:"50%",right:"auto",top:"auto",bottom:"calc(100% + 12px)"}},N=()=>null,f=({children:o,className:e,type:s="tourtip"})=>t.createElement("div",{className:d(`${s}__footer`,e)},o),C=({id:o,style:e,pointer:s=E,children:a,type:l="tooltip",showCloseButton:c,a11yCloseText:p,onClose:r})=>{const n=i.findComponent(a,N),m=i.findComponent(a,f),x=i.excludeComponent(a,f);return t.createElement("span",{className:`${l}__overlay`,id:o,role:g[l]||null,style:{...h[s],...e}},t.createElement("span",{className:`${l}__pointer ${l}__pointer--${s}`}),t.createElement("span",{className:`${l}__mask`},t.createElement("span",{className:`${l}__cell`},t.createElement("span",{className:`${l}__content`},x),c?t.createElement("button",{...n==null?void 0:n.props,className:`icon-btn icon-btn--transparent ${l}__close`,type:"button","aria-label":p,onClick:r},t.createElement(b.EbayIcon,{name:"close16"})):null,m)))},$=({onExpand:o,onCollapse:e,initialExpanded:s=!1,hostRef:a})=>{const[l,c]=t.useState(s);return{isExpanded:l,expandTooltip:()=>{c(!0),o&&o()},collapseTooltip:()=>{var n;c(!1),e&&e(),(n=a==null?void 0:a.current)==null||n.focus()}}};exports.Tooltip=_;exports.TooltipContent=C;exports.TooltipFooter=f;exports.TooltipHost=u;exports.useTooltip=$;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";const l=require("react");require("./array.polyfill.flat-5BAolFdk.js");function o(e=[],n){return l.Children.toArray(e).find(({type:t})=>t===n)||null}function s(e=[],n){return l.Children.toArray(e).filter(({type:t})=>t!==n)}function c(e=[],n){const r=l.Children.toArray(e),t=[n].flat();return r.filter(({type:i})=>t.includes(i))}function f(e=[],n){return l.Children.toArray(e).filter(n)}exports.excludeComponent=s;exports.filterBy=f;exports.filterByType=c;exports.findComponent=o;
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* adapted from:
|
|
4
|
-
* https://github.com/behnammodi/polyfill/blob/master/array.polyfill.js
|
|
5
|
-
* Array.prototype.flat()
|
|
6
|
-
* version 0.0.0
|
|
7
|
-
* Feature Chrome Firefox Internet Explorer Opera Safari Edge
|
|
8
|
-
* Basic support 69 62 (No) 56 12 (No)
|
|
9
|
-
* -------------------------------------------------------------------------------
|
|
10
|
-
*/
|
|
11
|
-
if (!Array.prototype.flat) {
|
|
12
|
-
// eslint-disable-next-line no-extend-native
|
|
13
|
-
Object.defineProperty(Array.prototype, 'flat', {
|
|
14
|
-
configurable: true,
|
|
15
|
-
writable: true,
|
|
16
|
-
value: function (d) {
|
|
17
|
-
const depthArg = typeof d === 'undefined' ? 1 : Number(d) || 0;
|
|
18
|
-
const result = [];
|
|
19
|
-
const forEach = result.forEach;
|
|
20
|
-
const flatDeep = (arr, depth) => forEach.call(arr, val => {
|
|
21
|
-
if (depth > 0 && Array.isArray(val)) {
|
|
22
|
-
flatDeep(val, depth - 1);
|
|
23
|
-
}
|
|
24
|
-
else {
|
|
25
|
-
result.push(val);
|
|
26
|
-
}
|
|
27
|
-
});
|
|
28
|
-
flatDeep(this, depthArg);
|
|
29
|
-
return result;
|
|
30
|
-
}
|
|
31
|
-
});
|
|
32
|
-
}
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
-
if (mod && mod.__esModule) return mod;
|
|
20
|
-
var result = {};
|
|
21
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
-
__setModuleDefault(result, mod);
|
|
23
|
-
return result;
|
|
24
|
-
};
|
|
25
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
-
exports.withForwardRef = void 0;
|
|
27
|
-
const react_1 = __importStar(require("react"));
|
|
28
|
-
const getDisplayName = (Component) => Component.displayName || Component.name || 'Component';
|
|
29
|
-
// Typescript will automatically find the return type crom forwardRef() function
|
|
30
|
-
// Disabling eslint for this use case
|
|
31
|
-
// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
|
|
32
|
-
const withForwardRef = (Component) => {
|
|
33
|
-
const ForwardRef = (0, react_1.forwardRef)((props, ref) => react_1.default.createElement(Component, Object.assign({}, props, { forwardedRef: ref })));
|
|
34
|
-
ForwardRef.displayName = getDisplayName(Component);
|
|
35
|
-
return ForwardRef;
|
|
36
|
-
};
|
|
37
|
-
exports.withForwardRef = withForwardRef;
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("./forwardRef"), exports);
|
|
18
|
-
__exportStar(require("./utils"), exports);
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.usePrevious = void 0;
|
|
4
|
-
const react_1 = require("react");
|
|
5
|
-
function usePrevious(value) {
|
|
6
|
-
const ref = (0, react_1.useRef)();
|
|
7
|
-
(0, react_1.useEffect)(() => {
|
|
8
|
-
ref.current = value;
|
|
9
|
-
}, [value]);
|
|
10
|
-
return ref.current;
|
|
11
|
-
}
|
|
12
|
-
exports.usePrevious = usePrevious;
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.filterBy = exports.filterByType = exports.excludeComponent = exports.findComponent = void 0;
|
|
4
|
-
const react_1 = require("react");
|
|
5
|
-
require("./array.polyfill.flat"); // for Mobile Safari 11
|
|
6
|
-
function findComponent(nodes = [], componentType) {
|
|
7
|
-
const elements = react_1.Children.toArray(nodes);
|
|
8
|
-
return elements.find(({ type }) => type === componentType) || null;
|
|
9
|
-
}
|
|
10
|
-
exports.findComponent = findComponent;
|
|
11
|
-
function excludeComponent(nodes = [], componentType) {
|
|
12
|
-
const elements = react_1.Children.toArray(nodes);
|
|
13
|
-
return elements.filter(({ type }) => type !== componentType);
|
|
14
|
-
}
|
|
15
|
-
exports.excludeComponent = excludeComponent;
|
|
16
|
-
function filterByType(nodes = [], componentType) {
|
|
17
|
-
const elements = react_1.Children.toArray(nodes);
|
|
18
|
-
const types = [componentType].flat();
|
|
19
|
-
return elements.filter(({ type }) => types.includes(type));
|
|
20
|
-
}
|
|
21
|
-
exports.filterByType = filterByType;
|
|
22
|
-
function filterBy(nodes = [], predicate) {
|
|
23
|
-
const elements = react_1.Children.toArray(nodes);
|
|
24
|
-
return elements.filter(predicate);
|
|
25
|
-
}
|
|
26
|
-
exports.filterBy = filterBy;
|
package/common/debounce.js
DELETED
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.debounce = void 0;
|
|
4
|
-
function debounce(fn, ms) {
|
|
5
|
-
let timer;
|
|
6
|
-
return (...args) => {
|
|
7
|
-
clearTimeout(timer);
|
|
8
|
-
timer = setTimeout(() => fn(...args), ms);
|
|
9
|
-
};
|
|
10
|
-
}
|
|
11
|
-
exports.debounce = debounce;
|
|
@@ -1,123 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/*
|
|
3
|
-
* Based on https://github.com/eBay/ebayui-core/edit/master/src/common/event-utils/index.js
|
|
4
|
-
*/
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.wrapEvent = exports.handleResize = exports.removeEventListener = exports.addEventListener = exports.preventDefaultIfHijax = exports.handleTextInput = exports.handleLeftRightArrowsKeydown = exports.handleUpDownArrowsKeydown = exports.handleEscapeKeydown = exports.isActionKey = exports.handleActionKeydown = exports.handleEnterKeydown = void 0;
|
|
7
|
-
/**
|
|
8
|
-
* Generic keydown handler used by more specific cases
|
|
9
|
-
* @param {Array} keyList: List of acceptable keys
|
|
10
|
-
* @param {KeyboardEvent} e
|
|
11
|
-
* @param {Function} callback
|
|
12
|
-
*/
|
|
13
|
-
function handleKeydown(keyList, e, callback = () => { }) {
|
|
14
|
-
if (keyList.includes(e.key)) {
|
|
15
|
-
callback();
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
// inverse of found keys
|
|
19
|
-
function handleNotKeydown(keyList, e, callback = () => { }) {
|
|
20
|
-
if (!keyList.includes(e.key)) {
|
|
21
|
-
callback();
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
function handleEnterKeydown(e, callback) {
|
|
25
|
-
if (e.key === 'Enter') {
|
|
26
|
-
callback();
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
exports.handleEnterKeydown = handleEnterKeydown;
|
|
30
|
-
function handleActionKeydown(e, callback) {
|
|
31
|
-
if (isActionKey(e.key)) {
|
|
32
|
-
callback();
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
exports.handleActionKeydown = handleActionKeydown;
|
|
36
|
-
function isActionKey(key) {
|
|
37
|
-
return [' ', 'Enter'].includes(key);
|
|
38
|
-
}
|
|
39
|
-
exports.isActionKey = isActionKey;
|
|
40
|
-
function handleEscapeKeydown(e, callback) {
|
|
41
|
-
handleKeydown(['Esc', 'Escape'], e, callback);
|
|
42
|
-
}
|
|
43
|
-
exports.handleEscapeKeydown = handleEscapeKeydown;
|
|
44
|
-
function handleUpDownArrowsKeydown(e, callback) {
|
|
45
|
-
handleKeydown(['Up', 'ArrowUp', 'Down', 'ArrowDown'], e, callback);
|
|
46
|
-
}
|
|
47
|
-
exports.handleUpDownArrowsKeydown = handleUpDownArrowsKeydown;
|
|
48
|
-
function handleLeftRightArrowsKeydown(e, callback) {
|
|
49
|
-
handleKeydown(['Left', 'ArrowLeft', 'Right', 'ArrowRight'], e, callback);
|
|
50
|
-
}
|
|
51
|
-
exports.handleLeftRightArrowsKeydown = handleLeftRightArrowsKeydown;
|
|
52
|
-
// only fire for character input, not modifier/meta keys (enter, escape, backspace, tab, etc.)
|
|
53
|
-
function handleTextInput(e, callback) {
|
|
54
|
-
const keyList = [
|
|
55
|
-
// Edge
|
|
56
|
-
'Esc',
|
|
57
|
-
'Left',
|
|
58
|
-
'Up',
|
|
59
|
-
'Right',
|
|
60
|
-
'Down',
|
|
61
|
-
// Browsers
|
|
62
|
-
'Tab',
|
|
63
|
-
'Enter',
|
|
64
|
-
'Shift',
|
|
65
|
-
'Control',
|
|
66
|
-
'Alt',
|
|
67
|
-
'CapsLock',
|
|
68
|
-
'Escape',
|
|
69
|
-
'ArrowLeft',
|
|
70
|
-
'ArrowUp',
|
|
71
|
-
'ArrowRight',
|
|
72
|
-
'ArrowDown',
|
|
73
|
-
'Meta'
|
|
74
|
-
];
|
|
75
|
-
handleNotKeydown(keyList, e, callback);
|
|
76
|
-
}
|
|
77
|
-
exports.handleTextInput = handleTextInput;
|
|
78
|
-
function preventDefaultIfHijax(e, hijax) {
|
|
79
|
-
if (hijax) {
|
|
80
|
-
e.preventDefault();
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
exports.preventDefaultIfHijax = preventDefaultIfHijax;
|
|
84
|
-
const handlers = [];
|
|
85
|
-
function addEventListener(_, handler) {
|
|
86
|
-
if (handlers.length === 0) {
|
|
87
|
-
window.addEventListener('resize', handleResize);
|
|
88
|
-
}
|
|
89
|
-
handlers.push(handler);
|
|
90
|
-
}
|
|
91
|
-
exports.addEventListener = addEventListener;
|
|
92
|
-
function removeEventListener(_, handler) {
|
|
93
|
-
if (handlers.length === 1) {
|
|
94
|
-
window.removeEventListener('resize', handleResize);
|
|
95
|
-
}
|
|
96
|
-
handlers.splice(handlers.indexOf(handler), 1);
|
|
97
|
-
}
|
|
98
|
-
exports.removeEventListener = removeEventListener;
|
|
99
|
-
function handleResize(e) {
|
|
100
|
-
window.removeEventListener('resize', handleResize);
|
|
101
|
-
const callback = () => {
|
|
102
|
-
if (handlers.length) {
|
|
103
|
-
handlers.forEach(handler => handler(e));
|
|
104
|
-
window.addEventListener('resize', handleResize);
|
|
105
|
-
}
|
|
106
|
-
};
|
|
107
|
-
if (window.requestAnimationFrame) {
|
|
108
|
-
window.requestAnimationFrame(callback);
|
|
109
|
-
}
|
|
110
|
-
else {
|
|
111
|
-
window.setTimeout(callback, 16);
|
|
112
|
-
}
|
|
113
|
-
}
|
|
114
|
-
exports.handleResize = handleResize;
|
|
115
|
-
function wrapEvent(parentEventHandler = () => { }, localEventHandler) {
|
|
116
|
-
return (e) => {
|
|
117
|
-
parentEventHandler(e);
|
|
118
|
-
if (!e.defaultPrevented) {
|
|
119
|
-
return localEventHandler(e);
|
|
120
|
-
}
|
|
121
|
-
};
|
|
122
|
-
}
|
|
123
|
-
exports.wrapEvent = wrapEvent;
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
/*
|
|
4
|
-
type ClipboardEventHandler<T = Element> = EventHandler<ClipboardEvent<T>>;
|
|
5
|
-
type CompositionEventHandler<T = Element> = EventHandler<CompositionEvent<T>>;
|
|
6
|
-
type DragEventHandler<T = Element> = EventHandler<DragEvent<T>>;
|
|
7
|
-
type FormEventHandler<T = Element> = EventHandler<FormEvent<T>>;
|
|
8
|
-
type TouchEventHandler<T = Element> = EventHandler<TouchEvent<T>>;
|
|
9
|
-
type PointerEventHandler<T = Element> = EventHandler<PointerEvent<T>>;
|
|
10
|
-
type UIEventHandler<T = Element> = EventHandler<UIEvent<T>>;
|
|
11
|
-
type WheelEventHandler<T = Element> = EventHandler<WheelEvent<T>>;
|
|
12
|
-
type AnimationEventHandler<T = Element> = EventHandler<AnimationEvent<T>>;
|
|
13
|
-
type TransitionEventHandler<T = Element> = EventHandler<TransitionEvent<T>>;
|
|
14
|
-
*/
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const react_1 = require("react");
|
|
4
|
-
const useKeyPress = () => {
|
|
5
|
-
const [arrowUpPressed, setArrowUpPressed] = (0, react_1.useState)(false);
|
|
6
|
-
const [arrowDownPressed, setArrowDownPressed] = (0, react_1.useState)(false);
|
|
7
|
-
const upHandler = ({ key }) => {
|
|
8
|
-
const fn = {
|
|
9
|
-
ArrowUp: setArrowUpPressed,
|
|
10
|
-
ArrowDown: setArrowDownPressed
|
|
11
|
-
}[key];
|
|
12
|
-
if (fn)
|
|
13
|
-
fn(false);
|
|
14
|
-
};
|
|
15
|
-
const downHandler = ({ key }) => {
|
|
16
|
-
const fn = {
|
|
17
|
-
ArrowUp: setArrowUpPressed,
|
|
18
|
-
ArrowDown: setArrowDownPressed
|
|
19
|
-
}[key];
|
|
20
|
-
if (fn)
|
|
21
|
-
fn(true);
|
|
22
|
-
};
|
|
23
|
-
(0, react_1.useEffect)(() => {
|
|
24
|
-
window.addEventListener('keydown', downHandler);
|
|
25
|
-
window.addEventListener('keyup', upHandler);
|
|
26
|
-
return () => {
|
|
27
|
-
window.removeEventListener('keydown', downHandler);
|
|
28
|
-
window.removeEventListener('keyup', upHandler);
|
|
29
|
-
};
|
|
30
|
-
}, []);
|
|
31
|
-
return [arrowUpPressed, arrowDownPressed];
|
|
32
|
-
};
|
|
33
|
-
exports.default = useKeyPress;
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const react_1 = require("react");
|
|
7
|
-
const use_key_press_1 = __importDefault(require("./use-key-press"));
|
|
8
|
-
const useRovingIndex = (children, FocusableType, defaultValue) => {
|
|
9
|
-
const [rovingIndex, setRovingIndex] = (0, react_1.useState)(defaultValue);
|
|
10
|
-
const [arrowUpPressed, arrowDownPressed] = (0, use_key_press_1.default)();
|
|
11
|
-
const rovingIndexArray = react_1.Children
|
|
12
|
-
.toArray(children)
|
|
13
|
-
.reduce((focusables, child, i) => child.type === FocusableType ? [...focusables, i] : focusables, []);
|
|
14
|
-
const currentIndex = rovingIndexArray.indexOf(rovingIndex);
|
|
15
|
-
const previousOrCurrent = () => {
|
|
16
|
-
if (currentIndex === -1)
|
|
17
|
-
return rovingIndex;
|
|
18
|
-
const previousRovingIndex = rovingIndexArray[currentIndex - 1];
|
|
19
|
-
return previousRovingIndex === undefined ? rovingIndex : previousRovingIndex;
|
|
20
|
-
};
|
|
21
|
-
const nextOrCurrent = () => {
|
|
22
|
-
if (currentIndex === -1)
|
|
23
|
-
return rovingIndex;
|
|
24
|
-
const nextRovingIndex = rovingIndexArray[currentIndex + 1];
|
|
25
|
-
return nextRovingIndex === undefined ? rovingIndex : nextRovingIndex;
|
|
26
|
-
};
|
|
27
|
-
(0, react_1.useEffect)(() => {
|
|
28
|
-
if (arrowUpPressed)
|
|
29
|
-
setRovingIndex(previousOrCurrent());
|
|
30
|
-
if (arrowDownPressed)
|
|
31
|
-
setRovingIndex(nextOrCurrent());
|
|
32
|
-
}, [arrowUpPressed, arrowDownPressed]);
|
|
33
|
-
return [rovingIndex, setRovingIndex];
|
|
34
|
-
};
|
|
35
|
-
exports.default = useRovingIndex;
|