@ebay/ui-core-react 7.4.0-alpha.8 → 7.4.0
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/README.md +2 -2
- package/array.polyfill.flat-5BAolFdk.js +1 -0
- package/badge-CoHKfiPt.js +1 -0
- package/button-DGuEBUDJ.js +1 -0
- package/calendar-lAu6VfAb.js +1 -0
- package/common/component-utils/forwardRef/index.js +1 -10
- package/common/component-utils/index.js +1 -9
- package/common/component-utils/utils/index.js +1 -25
- package/common/event-utils/index.js +1 -113
- package/common/floating-label-utils/hooks/index.js +1 -106
- package/common/notice-utils/notice-cta/index.js +1 -5
- package/common/random-id/index.js +1 -13
- package/common/tooltip-utils/constants/index.js +1 -97
- package/common/tooltip-utils/index.js +1 -11
- package/debounce-BQsYxxOL.js +1 -0
- package/dialog-previous-button-CpuFLkQp.js +1 -0
- package/drawer-rqXAEeqd.js +1 -0
- package/ebay-alert-dialog/index.js +1 -26
- package/ebay-badge/index.js +1 -4
- package/ebay-breadcrumbs/index.js +1 -47
- package/ebay-button/index.js +1 -5
- package/ebay-calendar/index.js +1 -4
- package/ebay-carousel/index.js +1 -345
- package/ebay-checkbox/index.js +1 -52
- package/ebay-confirm-dialog/index.js +1 -28
- package/ebay-cta-button/index.js +1 -22
- package/ebay-date-textbox/index.js +1 -140
- package/ebay-dialog-base/components/animation/index.js +1 -92
- package/ebay-dialog-base/components/dialog-footer/index.js +1 -4
- package/ebay-dialog-base/components/dialog-header/index.js +1 -4
- package/ebay-dialog-base/index.js +1 -13
- package/ebay-drawer-dialog/index.js +1 -4
- package/ebay-eek/index.js +1 -54
- package/ebay-fake-menu/index.js +1 -10
- package/ebay-fake-menu/menu-item/index.js +1 -49
- package/ebay-fake-menu-button/index.js +1 -7
- package/ebay-fake-menu-button/menu-button/index.js +1 -12
- package/ebay-fake-tabs/index.js +1 -30
- package/ebay-field/index.js +1 -21
- package/ebay-fullscreen-dialog/index.js +1 -10
- package/ebay-icon/index.js +1 -4
- package/ebay-icon/types.d.ts +1 -1
- package/ebay-icon/types.d.ts.map +1 -1
- package/ebay-icon-button/index.js +1 -4
- package/ebay-infotip/index.js +1 -76
- package/ebay-inline-notice/index.js +1 -36
- package/ebay-lightbox-dialog/index.js +1 -12
- package/ebay-listbox-button/index.d.ts +2 -1
- package/ebay-listbox-button/index.d.ts.map +1 -1
- package/ebay-listbox-button/index.js +2 -151
- package/ebay-listbox-button/listbox-button-option.d.ts +10 -0
- package/ebay-listbox-button/listbox-button-option.d.ts.map +1 -0
- package/ebay-listbox-button/listbox-button.d.ts +5 -15
- package/ebay-listbox-button/listbox-button.d.ts.map +1 -1
- package/ebay-menu/index.js +1 -9
- package/ebay-menu-button/index.js +1 -113
- package/ebay-notice-base/index.js +1 -7
- package/ebay-page-notice/index.js +1 -50
- package/ebay-pagination/index.js +1 -244
- package/ebay-panel-dialog/index.js +1 -12
- package/ebay-progress-bar/index.js +1 -6
- package/ebay-progress-spinner/index.js +1 -4
- package/ebay-progress-stepper/index.js +1 -72
- package/ebay-radio/index.js +1 -4
- package/ebay-radio/radio/index.js +1 -48
- package/ebay-section-notice/index.js +1 -69
- package/ebay-section-title/index.js +1 -38
- package/ebay-segmented-buttons/index.js +1 -46
- package/ebay-select/index.js +1 -98
- package/ebay-signal/index.js +1 -9
- package/ebay-snackbar-dialog/index.js +1 -81
- package/ebay-split-button/index.js +1 -22
- package/ebay-star-rating/index.js +1 -9
- package/ebay-star-rating-select/index.js +1 -55
- package/ebay-svg/index.js +1 -5189
- package/ebay-svg/symbols.d.ts.map +1 -1
- package/ebay-switch/index.js +1 -27
- package/ebay-tabs/index.js +1 -88
- package/ebay-textbox/index.js +1 -10
- package/ebay-toast-dialog/index.js +1 -9
- package/ebay-toggle-button/README.md +39 -0
- package/ebay-toggle-button/index.d.ts +3 -0
- package/ebay-toggle-button/index.d.ts.map +1 -0
- package/ebay-toggle-button/index.js +1 -0
- package/ebay-toggle-button/toggle-button.d.ts +5 -0
- package/ebay-toggle-button/toggle-button.d.ts.map +1 -0
- package/ebay-toggle-button/types.d.ts +23 -0
- package/ebay-toggle-button/types.d.ts.map +1 -0
- package/ebay-toggle-button-group/README.md +56 -0
- package/ebay-toggle-button-group/index.d.ts +3 -0
- package/ebay-toggle-button-group/index.d.ts.map +1 -0
- package/ebay-toggle-button-group/index.js +1 -0
- package/ebay-toggle-button-group/toggle-button-group.d.ts +5 -0
- package/ebay-toggle-button-group/toggle-button-group.d.ts.map +1 -0
- package/ebay-toggle-button-group/types.d.ts +20 -0
- package/ebay-toggle-button-group/types.d.ts.map +1 -0
- package/ebay-tooltip/index.js +1 -64
- package/ebay-tourtip/index.js +1 -54
- package/ebay-video/index.js +1 -229
- package/events/index.js +1 -18
- package/icon-TuxfQndO.js +1 -0
- package/icon-button-Cwaj-eT9.js +1 -0
- package/label-CnrpYJ-g.js +1 -0
- package/menu-CV-INYLM.js +1 -0
- package/menu-_LzP6yje.js +1 -0
- package/menu-button-BZ66jxvI.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 +2 -5
- package/progress-spinner-U2qOANON.js +1 -0
- package/range-DOsPN0h5.js +1 -0
- package/textbox-dUhinDwj.js +1 -0
- package/toggle-button-D8l0YB43.js +1 -0
- package/use-roving-index-DoAVBgsp.js +1 -0
- package/use-tooltip-CL3_zAeg.js +1 -0
- package/utils/index.js +1 -13
- package/array.polyfill.flat-DyxysTxZ.js +0 -21
- package/badge-CR5t7-2L.js +0 -8
- package/button-B4bZIgwB.js +0 -83
- package/calendar-D-DWjrMU.js +0 -333
- package/debounce-v8bWAUnY.js +0 -9
- package/dialog-previous-button-EC_Y6KaT.js +0 -370
- package/drawer-DBDktEBZ.js +0 -69
- package/ebay-listbox/README.md +0 -100
- package/ebay-listbox/index.d.ts +0 -4
- package/ebay-listbox/index.d.ts.map +0 -1
- package/ebay-listbox/index.js +0 -6
- package/ebay-listbox/listbox-option-description.d.ts +0 -4
- package/ebay-listbox/listbox-option-description.d.ts.map +0 -1
- package/ebay-listbox/listbox-option.d.ts +0 -10
- package/ebay-listbox/listbox-option.d.ts.map +0 -1
- package/ebay-listbox/listbox.d.ts +0 -21
- package/ebay-listbox/listbox.d.ts.map +0 -1
- package/icon-B17Di3YL.js +0 -56
- package/icon-button-BQWoMgX1.js +0 -31
- package/index-BXizW4ue.js +0 -89
- package/index-DcH7Tjjd.js +0 -272
- package/label-C0AS4fnO.js +0 -19
- package/listbox-DGbY99kq.js +0 -674
- package/menu-Bsy48CE1.js +0 -163
- package/menu-button-CKGsgg6G.js +0 -89
- package/menu-fCOy6wBS.js +0 -29
- package/notice-content-BTXVxttv.js +0 -8
- package/notice-content-BhUeK1pd.js +0 -3
- package/notice-footer-CIQ8SM6N.js +0 -10
- package/progress-spinner-DOFKRtuu.js +0 -20
- package/range-C5qzyhg4.js +0 -3
- package/textbox-J291yCpJ.js +0 -136
- package/use-roving-index-CEM_UsCH.js +0 -58
- package/use-tooltip-7JxcZHJn.js +0 -92
- package/utils/scroll.d.ts +0 -2
- package/utils/scroll.d.ts.map +0 -1
package/ebay-video/index.js
CHANGED
|
@@ -1,229 +1 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __defProp = Object.defineProperty;
|
|
3
|
-
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
4
|
-
var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
5
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
6
|
-
const React = require("react");
|
|
7
|
-
const classNames = require("classnames");
|
|
8
|
-
const shaka = require("shaka-player/dist/shaka-player.ui");
|
|
9
|
-
const common_componentUtils_utils = require("../common/component-utils/utils/index.js");
|
|
10
|
-
const icon = require("../icon-B17Di3YL.js");
|
|
11
|
-
const progressSpinner = require("../progress-spinner-DOFKRtuu.js");
|
|
12
|
-
const client = require("react-dom/client");
|
|
13
|
-
const EbayVideoSource = ({ ...rest }) => React.createElement("source", { ...rest });
|
|
14
|
-
const ERROR_ANOTHER_LOAD = 7e3;
|
|
15
|
-
const ERROR_NO_PLAYER = 11;
|
|
16
|
-
const defaultVideoConfig = {
|
|
17
|
-
addBigPlayButton: false,
|
|
18
|
-
addSeekBar: true,
|
|
19
|
-
controlPanelElements: [
|
|
20
|
-
"play_pause",
|
|
21
|
-
"time_and_duration",
|
|
22
|
-
"spacer",
|
|
23
|
-
"mute",
|
|
24
|
-
"report",
|
|
25
|
-
"captions",
|
|
26
|
-
// 'quality', // uncomment this to show a gear icon for video quality control
|
|
27
|
-
"fullscreen"
|
|
28
|
-
]
|
|
29
|
-
};
|
|
30
|
-
const ReportButton = ({ callback, children }) => React.createElement(
|
|
31
|
-
"button",
|
|
32
|
-
{ className: "video-player__report-button", ref: callback },
|
|
33
|
-
React.createElement(icon.EbayIcon, { name: "flag24" }),
|
|
34
|
-
children
|
|
35
|
-
);
|
|
36
|
-
function customControls(onReport = () => {
|
|
37
|
-
}) {
|
|
38
|
-
const Report = class extends shaka.ui.Element {
|
|
39
|
-
constructor(parent, controls, text) {
|
|
40
|
-
super(parent, controls);
|
|
41
|
-
const tempEl = document.createElement("div");
|
|
42
|
-
const buttonCallback = () => {
|
|
43
|
-
const reportButton = tempEl.firstChild;
|
|
44
|
-
parent.appendChild(reportButton);
|
|
45
|
-
tempEl.remove();
|
|
46
|
-
this.eventManager.listen(reportButton, "click", onReport);
|
|
47
|
-
};
|
|
48
|
-
client.createRoot(tempEl).render(React.createElement(ReportButton, { callback: buttonCallback }, text));
|
|
49
|
-
}
|
|
50
|
-
};
|
|
51
|
-
Report.Factory = class {
|
|
52
|
-
constructor(reportText) {
|
|
53
|
-
__publicField(this, "reportText");
|
|
54
|
-
this.reportText = reportText;
|
|
55
|
-
}
|
|
56
|
-
create(rootElement, controls) {
|
|
57
|
-
return new Report(rootElement, controls, this.reportText);
|
|
58
|
-
}
|
|
59
|
-
};
|
|
60
|
-
return { Report };
|
|
61
|
-
}
|
|
62
|
-
const EbayVideo = ({ width, height, thumbnail, action, muted, playView = "inline", a11yLoadText, a11yPlayText, reportText, volumeSlider, volume = 1, hideReportButton, errorText, onVolumeChange = () => {
|
|
63
|
-
}, onLoadError = () => {
|
|
64
|
-
}, onPlay = () => {
|
|
65
|
-
}, onReport = () => {
|
|
66
|
-
}, children, ...rest }) => {
|
|
67
|
-
const [loaded, setLoaded] = React.useState();
|
|
68
|
-
const [buffering, setBuffering] = React.useState();
|
|
69
|
-
const [playing, setPlaying] = React.useState();
|
|
70
|
-
const [failed, setFailed] = React.useState();
|
|
71
|
-
const containerRef = React.useRef(null);
|
|
72
|
-
const videoRef = React.useRef(null);
|
|
73
|
-
const playerRef = React.useRef(null);
|
|
74
|
-
const uiRef = React.useRef(null);
|
|
75
|
-
const sources = common_componentUtils_utils.filterByType(children, EbayVideoSource).map(({ props }) => props);
|
|
76
|
-
const handleError = (err) => {
|
|
77
|
-
setLoaded(true);
|
|
78
|
-
setFailed(true);
|
|
79
|
-
onLoadError(err);
|
|
80
|
-
};
|
|
81
|
-
const loadSource = (index = 0) => {
|
|
82
|
-
var _a;
|
|
83
|
-
if (!sources.length || !playerRef.current)
|
|
84
|
-
return;
|
|
85
|
-
setLoaded(false);
|
|
86
|
-
playerRef.current.load((_a = sources[index]) == null ? void 0 : _a.src).then(() => {
|
|
87
|
-
setFailed(false);
|
|
88
|
-
}).catch((err) => {
|
|
89
|
-
console.error(err);
|
|
90
|
-
switch (err.code) {
|
|
91
|
-
case ERROR_ANOTHER_LOAD:
|
|
92
|
-
return;
|
|
93
|
-
case ERROR_NO_PLAYER:
|
|
94
|
-
setTimeout(() => loadSource(index), 0);
|
|
95
|
-
break;
|
|
96
|
-
default: {
|
|
97
|
-
const nextIndex = sources.length > index + 1 && index + 1;
|
|
98
|
-
if (nextIndex) {
|
|
99
|
-
setTimeout(() => loadSource(nextIndex), 0);
|
|
100
|
-
} else {
|
|
101
|
-
handleError(err);
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
}).finally(() => {
|
|
106
|
-
setLoaded(true);
|
|
107
|
-
});
|
|
108
|
-
};
|
|
109
|
-
React.useEffect(() => {
|
|
110
|
-
const video = videoRef.current;
|
|
111
|
-
const container = containerRef.current;
|
|
112
|
-
if (!video || !container)
|
|
113
|
-
return;
|
|
114
|
-
video.volume = volume;
|
|
115
|
-
shaka.polyfill.installAll();
|
|
116
|
-
playerRef.current = new shaka.Player(video);
|
|
117
|
-
if (!playerRef.current)
|
|
118
|
-
return;
|
|
119
|
-
playerRef.current.addEventListener("error", handleError);
|
|
120
|
-
playerRef.current.addEventListener("buffering", (e) => {
|
|
121
|
-
setBuffering(e.buffering);
|
|
122
|
-
});
|
|
123
|
-
uiRef.current = new shaka.ui.Overlay(playerRef.current, container, video, reportText);
|
|
124
|
-
uiRef.current.configure({
|
|
125
|
-
addBigPlayButton: true,
|
|
126
|
-
controlPanelElements: [],
|
|
127
|
-
addSeekBar: false
|
|
128
|
-
});
|
|
129
|
-
if (!hideReportButton) {
|
|
130
|
-
const { Report } = customControls(onReport);
|
|
131
|
-
shaka.ui.Controls.registerElement("report", new Report.Factory(reportText));
|
|
132
|
-
}
|
|
133
|
-
loadSource();
|
|
134
|
-
hideSpinner(container);
|
|
135
|
-
}, []);
|
|
136
|
-
React.useEffect(() => {
|
|
137
|
-
switch (action) {
|
|
138
|
-
case "play":
|
|
139
|
-
videoRef.current.play();
|
|
140
|
-
break;
|
|
141
|
-
case "pause":
|
|
142
|
-
videoRef.current.pause();
|
|
143
|
-
break;
|
|
144
|
-
}
|
|
145
|
-
}, [action]);
|
|
146
|
-
const showControls = () => {
|
|
147
|
-
if (!uiRef.current)
|
|
148
|
-
return;
|
|
149
|
-
const updatedControls = volumeSlider ? {
|
|
150
|
-
controlPanelElements: withVolumeControl(defaultVideoConfig.controlPanelElements)
|
|
151
|
-
} : {};
|
|
152
|
-
uiRef.current.configure({
|
|
153
|
-
...defaultVideoConfig,
|
|
154
|
-
...updatedControls
|
|
155
|
-
});
|
|
156
|
-
videoRef.current.controls = false;
|
|
157
|
-
};
|
|
158
|
-
const handlePlaying = (e) => {
|
|
159
|
-
e.stopPropagation();
|
|
160
|
-
showControls();
|
|
161
|
-
if (playView === "fullscreen") {
|
|
162
|
-
videoRef.current.requestFullscreen();
|
|
163
|
-
}
|
|
164
|
-
setPlaying(true);
|
|
165
|
-
onPlay(e, { player: playerRef.current });
|
|
166
|
-
};
|
|
167
|
-
const handleOnPlayClick = () => {
|
|
168
|
-
videoRef.current.play();
|
|
169
|
-
};
|
|
170
|
-
const handleVolumeChange = (e) => {
|
|
171
|
-
const eventTarget = e.currentTarget;
|
|
172
|
-
onVolumeChange(e, {
|
|
173
|
-
volume: Math.round((eventTarget.volume + Number.EPSILON) * 100) / 100,
|
|
174
|
-
muted: eventTarget.muted
|
|
175
|
-
});
|
|
176
|
-
};
|
|
177
|
-
const handleOnPause = () => {
|
|
178
|
-
videoRef.current.controls = false;
|
|
179
|
-
};
|
|
180
|
-
const style = {
|
|
181
|
-
width: width ? `${width}px` : void 0,
|
|
182
|
-
height: height ? `${height}px` : void 0
|
|
183
|
-
};
|
|
184
|
-
return React.createElement(
|
|
185
|
-
"div",
|
|
186
|
-
{ style, className: classNames("video-player", { "video-player--poster": !playing }) },
|
|
187
|
-
!playing && loaded && !failed && !buffering && React.createElement(
|
|
188
|
-
"div",
|
|
189
|
-
{ className: "shaka-play-button-container" },
|
|
190
|
-
React.createElement(
|
|
191
|
-
"button",
|
|
192
|
-
{ onClick: handleOnPlayClick, className: "shaka-play-button", style: { opacity: 1, zIndex: 999 }, "aria-label": a11yPlayText },
|
|
193
|
-
React.createElement(icon.EbayIcon, { name: "playFilled64Colored" })
|
|
194
|
-
)
|
|
195
|
-
),
|
|
196
|
-
React.createElement(
|
|
197
|
-
"div",
|
|
198
|
-
{ className: "video-player__container", ref: containerRef },
|
|
199
|
-
React.createElement("video", { ref: videoRef, style, poster: thumbnail, muted: muted || false, onPlaying: handlePlaying, onPause: handleOnPause, onVolumeChange: handleVolumeChange, ...rest }, sources.map((source, i) => React.createElement("source", { key: i, ...source })))
|
|
200
|
-
),
|
|
201
|
-
React.createElement(
|
|
202
|
-
"div",
|
|
203
|
-
{ className: classNames("video-player__overlay", { "video-player__overlay--hidden": !failed }) },
|
|
204
|
-
React.createElement(icon.EbayIcon, { name: "attention64" }),
|
|
205
|
-
React.createElement("div", { className: "video-player__overlay-text" }, errorText)
|
|
206
|
-
),
|
|
207
|
-
React.createElement(
|
|
208
|
-
"div",
|
|
209
|
-
{ className: classNames("video-player__overlay", {
|
|
210
|
-
"video-player__overlay--hidden": loaded && (failed || !buffering)
|
|
211
|
-
}) },
|
|
212
|
-
React.createElement(progressSpinner.EbayProgressSpinner, { size: "large", "aria-label": a11yLoadText })
|
|
213
|
-
)
|
|
214
|
-
);
|
|
215
|
-
};
|
|
216
|
-
function withVolumeControl(controls) {
|
|
217
|
-
const insertAt = controls.length - 2 > 0 ? controls.length - 2 : controls.length;
|
|
218
|
-
const controlsWithVolume = [...controls];
|
|
219
|
-
controlsWithVolume.splice(insertAt, 0, "volume");
|
|
220
|
-
return controlsWithVolume;
|
|
221
|
-
}
|
|
222
|
-
function hideSpinner(container) {
|
|
223
|
-
const shakaSpinner = container.querySelectorAll(".shaka-spinner")[0];
|
|
224
|
-
if (shakaSpinner) {
|
|
225
|
-
shakaSpinner.setAttribute("hidden", "");
|
|
226
|
-
}
|
|
227
|
-
}
|
|
228
|
-
exports.EbayVideo = EbayVideo;
|
|
229
|
-
exports.EbayVideoSource = EbayVideoSource;
|
|
1
|
+
"use strict";var Q=Object.defineProperty;var X=(n,r,o)=>r in n?Q(n,r,{enumerable:!0,configurable:!0,writable:!0,value:o}):n[r]=o;var T=(n,r,o)=>X(n,typeof r!="symbol"?r+"":r,o);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react"),b=require("classnames"),d=require("shaka-player/dist/shaka-player.ui"),Z=require("../common/component-utils/utils/index.js"),_=require("../icon-TuxfQndO.js"),ee=require("../progress-spinner-U2qOANON.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"]},oe=({callback:n,children:r})=>e.createElement("button",{className:"video-player__report-button",ref:n},e.createElement(_.EbayIcon,{name:"flag24"}),r);function ae(n=()=>{}){const r=class extends d.ui.Element{constructor(o,u,y){super(o,u);const i=document.createElement("div"),E=()=>{const m=i.firstChild;o.appendChild(m),i.remove(),this.eventManager.listen(m,"click",n)};te.createRoot(i).render(e.createElement(oe,{callback:E},y))}};return r.Factory=class{constructor(o){T(this,"reportText");this.reportText=o}create(o,u){return new r(o,u,this.reportText)}},{Report:r}}const le=({width:n,height:r,thumbnail:o,action:u,muted:y,playView:i="inline",a11yLoadText:E,a11yPlayText:m,reportText:R,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,U]=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 a;!f.length||!s.current||(v(!1),s.current.load((a=f[t])==null?void 0:a.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,a=N.current;if(!(!t||!a)&&(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,a,t,R),p.current.configure({addBigPlayButton:!0,controlPanelElements:[],addSeekBar:!1}),!I){const{Report:c}=ae($);d.ui.Controls.registerElement("report",new c.Factory(R))}g(),ce(a)}},[]),e.useEffect(()=>{switch(u){case"play":l.current.play();break;case"pause":l.current.pause();break}},[u]);const W=()=>{if(!p.current)return;const t=A?{controlPanelElements:se(V.controlPanelElements)}:{};p.current.configure({...V,...t}),l.current.controls=!1},Y=t=>{t.stopPropagation(),W(),i==="fullscreen"&&l.current.requestFullscreen(),U(!0),z(t,{player:s.current})},G=()=>{l.current.play()},J=t=>{const a=t.currentTarget;F(t,{volume:Math.round((a.volume+Number.EPSILON)*100)/100,muted:a.muted})},K=()=>{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:G,className:"shaka-play-button",style:{opacity:1,zIndex:999},"aria-label":m},e.createElement(_.EbayIcon,{name:"playFilled64Colored"}))),e.createElement("div",{className:"video-player__container",ref:N},e.createElement("video",{ref:l,style:O,poster:o,muted:y||!1,onPlaying:Y,onPause:K,onVolumeChange:J,...D},f.map((t,a)=>e.createElement("source",{key:a,...t})))),e.createElement("div",{className:b("video-player__overlay",{"video-player__overlay--hidden":!h})},e.createElement(_.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,o=[...n];return o.splice(r,0,"volume"),o}function ce(n){const r=n.querySelectorAll(".shaka-spinner")[0];r&&r.setAttribute("hidden","")}exports.EbayVideo=le;exports.EbayVideoSource=w;
|
package/events/index.js
CHANGED
|
@@ -1,18 +1 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
const common_eventUtils = require("../common/event-utils/index.js");
|
|
4
|
-
const useRovingIndex = require("../use-roving-index-CEM_UsCH.js");
|
|
5
|
-
exports.addEventListener = common_eventUtils.addEventListener;
|
|
6
|
-
exports.handleActionKeydown = common_eventUtils.handleActionKeydown;
|
|
7
|
-
exports.handleEnterKeydown = common_eventUtils.handleEnterKeydown;
|
|
8
|
-
exports.handleEscapeKeydown = common_eventUtils.handleEscapeKeydown;
|
|
9
|
-
exports.handleLeftRightArrowsKeydown = common_eventUtils.handleLeftRightArrowsKeydown;
|
|
10
|
-
exports.handleResize = common_eventUtils.handleResize;
|
|
11
|
-
exports.handleTextInput = common_eventUtils.handleTextInput;
|
|
12
|
-
exports.handleUpDownArrowsKeydown = common_eventUtils.handleUpDownArrowsKeydown;
|
|
13
|
-
exports.isActionKey = common_eventUtils.isActionKey;
|
|
14
|
-
exports.preventDefaultIfHijax = common_eventUtils.preventDefaultIfHijax;
|
|
15
|
-
exports.removeEventListener = common_eventUtils.removeEventListener;
|
|
16
|
-
exports.wrapEvent = common_eventUtils.wrapEvent;
|
|
17
|
-
exports.useKeyPress = useRovingIndex.useKeyPress;
|
|
18
|
-
exports.useRovingIndex = useRovingIndex.useRovingIndex;
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../common/event-utils/index.js"),n=require("../use-roving-index-DoAVBgsp.js");exports.addEventListener=e.addEventListener;exports.handleActionKeydown=e.handleActionKeydown;exports.handleEnterKeydown=e.handleEnterKeydown;exports.handleEscapeKeydown=e.handleEscapeKeydown;exports.handleLeftRightArrowsKeydown=e.handleLeftRightArrowsKeydown;exports.handleResize=e.handleResize;exports.handleTextInput=e.handleTextInput;exports.handleUpDownArrowsKeydown=e.handleUpDownArrowsKeydown;exports.isActionKey=e.isActionKey;exports.preventDefaultIfHijax=e.preventDefaultIfHijax;exports.removeEventListener=e.removeEventListener;exports.wrapEvent=e.wrapEvent;exports.useKeyPress=n.useKeyPress;exports.useRovingIndex=n.useRovingIndex;
|
package/icon-TuxfQndO.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";const r=require("react"),g=require("classnames"),w=require("./common/component-utils/forwardRef/index.js");require("./array.polyfill.flat-5BAolFdk.js");const p=require("./common/random-id/index.js"),E=({name:o,className:n,noSkinClasses:e=!1,a11yText:t,a11yVariant:l,forwardedRef:d,...m})=>{const[u,f]=r.useState("");r.useEffect(()=>{f(p.randomId())},[]);const c=l==="label",i=t&&`icon-title-${u}`,b=t?{"aria-labelledby":c?void 0:i,"aria-label":c?t:void 0,role:"img"}:{"aria-hidden":!0},s=a(o),I=["icon",`icon--${$(s)||s}`,h(s)].filter(Boolean).join(" "),N=g(n,{[I]:!e});return r.createElement("svg",{...m,className:N,xmlns:"http://www.w3.org/2000/svg",focusable:!1,ref:d,...b},t&&!c&&r.createElement("title",{id:i},t),r.createElement("use",{xlinkHref:`#icon-${s}`}))};function $(o){const n=o.split("-"),e=n[n.length-1];return e==="colored"?n[n.length-2]:isNaN(Number(e))?"":e}function h(o){const n=o.split("-"),e=n.indexOf("filled");return e===-1?"":`icon--${n.slice(0,e+1).join("-")}`}function a(o){return o.replace(/([0-9]+)/g,(n,e)=>`-${e}`).replace(/([A-Z])/g,(n,e)=>`-${e.toLowerCase()}`)}const k=w.withForwardRef(E);exports.EbayIcon=k;exports.kebabCased=a;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";const e=require("react"),w=require("classnames"),$=require("./icon-TuxfQndO.js"),d=require("./badge-CoHKfiPt.js"),k=require("./common/component-utils/forwardRef/index.js");require("./array.polyfill.flat-5BAolFdk.js");const B=({href:c,icon:m,badgeNumber:o,badgeAriaLabel:y,transparent:E,className:b,forwardedRef:a,size:r,onEscape:q=()=>{},onKeyDown:p=()=>{},...s})=>{const n=c?"icon-link":"icon-btn",i=w(b,n,r&&`${n}--${r}`,{[`${n}--badged`]:o,[`${n}--transparent`]:E}),l=e.createElement(e.Fragment,null,e.createElement($.EbayIcon,{name:m}),o&&e.createElement(d.EbayBadge,{type:"icon",number:o,"aria-label":y})),u=t=>{(t.key==="Escape"||t.key==="Esc")&&q(t),p(t)};return c?e.createElement("a",{ref:a,className:i,href:c,onKeyDown:u,...s},l):e.createElement("button",{ref:a,type:"button",className:i,onKeyDown:u,...s},l)},I=k.withForwardRef(B);exports.EbayIconButton=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-CV-INYLM.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";const t=require("react"),V=require("classnames"),U=require("./use-roving-index-DoAVBgsp.js"),S=require("./common/event-utils/index.js"),T=require("./common/component-utils/forwardRef/index.js");require("./array.polyfill.flat-5BAolFdk.js");const $=require("./badge-CoHKfiPt.js"),j=require("./icon-TuxfQndO.js"),A=({className:d,checked:r,type:I,focused:a=!1,tabIndex:p,disabled:y,badgeNumber:f,badgeAriaLabel:h,children:v,...w})=>{const u=t.useRef(null),i=f!==void 0;t.useEffect(()=>{u.current&&a&&u.current.focus()},[u,a]);const x=["radio","checkbox"];return t.createElement("div",{"aria-label":h,...w,ref:u,className:V(d,"menu__item",i&&"menu__item--badged"),role:z(I),"aria-checked":x.includes(I)?r:void 0,"aria-disabled":y,tabIndex:a?0:p},t.createElement("span",{"aria-hidden":i},v,i&&t.createElement($.EbayBadge,{type:"menu",number:f})),t.createElement(j.EbayIcon,{name:"tick16"}))};function z(d){return{radio:"menuitemradio",checkbox:"menuitemcheckbox"}[d]||"menuitem"}const G=({baseEl:d="span",type:r,priority:I="secondary",checked:a,className:p,autofocus:y,onClick:f=()=>{},onKeyDown:h=()=>{},onChange:v=()=>{},onSelect:w=()=>{},forwardedRef:u,children:i,...x})=>{const m=t.Children.toArray(i),[C,q]=U.useRovingIndex(i,A,y===!0?0:void 0),[l,F]=t.useState(m.map(()=>!1)),B=n=>m.reduce((e,c,s)=>n[s]?[...e,c.props.value]:e,[]),g=n=>n.reduce((e,c,s)=>c?[...e,s]:e,[]),_=(n,e)=>({index:n,checked:g(e)}),R=(n,e)=>({..._(n,e),indexes:g(e),checkedValues:B(e)}),M=(n,e,c=!1)=>{let s=!1;const b=l.map((E,o)=>{const P=c?!1:E;return n===o?(E!==e&&(s=!0),e):P});if(s)return F(b),b},k=n=>{switch(r){case"radio":return M(n,!0,!0);case"checkbox":return M(n,!l[n],!1);default:return l.map((e,c)=>c===n)}};t.useEffect(()=>{if(r==="radio")if(a===void 0){const n=m.findIndex(e=>e.props.checked);n>-1&&k(n)}else k(a);else r==="checkbox"&&F(m.map(n=>!!n.props.checked))},[]);const K=(n,e,c)=>{switch(r){case"radio":case"checkbox":return v(n,R(e,c));default:return w(n,_(e,c))}},D=(n,e)=>{let c;switch(S.isActionKey(n.key)&&(c=k(e),c&&K(n,e,c)),r){case"radio":case"checkbox":return h(n,R(e,c||l));default:return h(n,_(e,c||l))}},N=(n,e)=>{q(e);const c=k(e);c&&K(n,e,c)};return t.createElement(d,{...x,className:V(p,"menu")},t.createElement("div",{className:"menu__items",role:"menu",ref:u},m.map((n,e)=>{const{onClick:c=()=>{},onFocus:s=()=>{},onKeyDown:b=()=>{},...E}=n.props;return t.cloneElement(n,{...E,type:r,focused:e===C,tabIndex:C===void 0?0:-1,checked:l[e],onFocus:o=>{q(e),s(o)},onClick:o=>{N(o,e),c(o),f(o)},onKeyDown:o=>{D(o,e),b(o)}})})))},H=T.withForwardRef(G);exports.EbayMenu=H;exports.EbayMenuItem=A;
|
package/menu-_LzP6yje.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";const e=require("react"),E=require("classnames"),f=({className:a,itemMatchesUrl:c=!0,onKeyDown:s=()=>{},onSelect:u=()=>{},children:l,...o})=>{const i=e.Children.toArray(l),m=c===!1?"true":"page";return e.createElement("div",{...o,className:E(a,"fake-menu")},e.createElement("ul",{className:"fake-menu__items",tabIndex:-1},i.map((t,r)=>{const{current:d,onClick:k=()=>{},...y}=t.props;return e.createElement("li",{key:r},e.cloneElement(t,{...y,"aria-current":d?m:void 0,onClick:n=>{u(n,{index:r}),k(n)},onKeyDown:n=>{s(n,{index:r})}}))})))};exports.EbayFakeMenu=f;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";const e=require("react"),s=require("classnames"),l=require("./common/component-utils/utils/index.js"),K=require("./common/event-utils/index.js"),T=require("./common/random-id/index.js"),D=require("./button-DGuEBUDJ.js"),R=require("./icon-TuxfQndO.js"),U=require("./icon-button-Cwaj-eT9.js"),z=require("./menu-_LzP6yje.js"),H=require("./ebay-fake-menu/menu-item/index.js"),p=H,y=({className:a,...r})=>e.createElement("hr",{...r,className:s(a,"menu-button__separator"),role:"separator"}),_=({children:a})=>e.createElement(e.Fragment,null,a),P=({a11yText:a,noToggleIcon:r,fixWidth:k,reverse:B,variant:i,expanded:M=!1,className:I,onCollapse:q=()=>{},onExpand:v=()=>{},onMouseDown:F=()=>{},onSelect:w=()=>{},text:d="",children:c,...x})=>{const[o,m]=e.useState(M),[b,N]=e.useState(),u=e.useRef(),f=l.findComponent(c,R.EbayIcon),C=l.findComponent(c,_)||(f?e.createElement("span",null,d):d),S=l.filterByType(c,[p,y]);e.useEffect(()=>{const n=t=>{u.current&&!u.current.contains(t.currentTarget)&&m(!1)};return o?(v(),setTimeout(()=>{document.addEventListener("click",n,!1)})):o===!1&&q(),()=>document.removeEventListener("click",n,!1)},[o]),e.useEffect(()=>{N(T.randomId())},[]);const h=n=>{K.handleEscapeKeydown(n,()=>{var t;m(!1),(t=u.current)==null||t.focus()})},L=s("fake-menu-button__menu",{"menu-button__menu--fix-width":k,"menu-button__menu--reverse":B}),E={ref:u,className:"fake-menu-button__button","aria-expanded":!!o,"aria-haspopup":!0,"aria-label":a,"aria-controls":b,onClick:()=>m(!o),...x};return e.createElement("span",{className:s("fake-menu-button",I)},i==="overflow"?e.createElement(U.EbayIconButton,{icon:"overflowHorizontal24",...E}):e.createElement(D.EbayButton,{variant:i==="form"?"form":void 0,bodyState:r?void 0:"expand",...E},f,C),o&&e.createElement(z.EbayFakeMenu,{className:L,id:b,tabIndex:-1,onKeyDown:h,onSelect:w},S.map((n,t)=>e.cloneElement(n,{...n.props,onMouseDown:g=>{F(g,{index:t})},className:s(n.props.className,"fake-menu-button__item"),key:t,autoFocus:t===0}))))};exports.EbayFakeMenuButtonItem=p;exports.EbayFakeMenuButtonLabel=_;exports.EbayMenuButton=P;exports.EbayMenuButtonSeparator=y;
|
|
@@ -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,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ebay/ui-core-react",
|
|
3
|
-
"version": "7.4.0
|
|
3
|
+
"version": "7.4.0",
|
|
4
4
|
"description": "Skin components build off React",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"registry": "https://registry.npmjs.org"
|
|
@@ -128,12 +128,9 @@
|
|
|
128
128
|
},
|
|
129
129
|
"dependencies": {
|
|
130
130
|
"classnames": "^2.2.6",
|
|
131
|
-
"makeup-
|
|
132
|
-
"makeup-expander": "^0.11.3",
|
|
131
|
+
"makeup-expander": "^0.10.1",
|
|
133
132
|
"makeup-keyboard-trap": "^0.4.1",
|
|
134
|
-
"makeup-prevent-scroll-keys": "^0.3.2",
|
|
135
133
|
"makeup-screenreader-trap": "^0.4.1",
|
|
136
|
-
"makeup-typeahead": "^0.3.2",
|
|
137
134
|
"react-remove-scroll": "^2.2.0"
|
|
138
135
|
},
|
|
139
136
|
"devDependencies": {
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";const s=require("react"),l=require("classnames"),i=require("./icon-TuxfQndO.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"),xe=require("./common/component-utils/forwardRef/index.js"),p=require("./common/component-utils/utils/index.js"),v=require("./icon-TuxfQndO.js"),be=require("./icon-button-Cwaj-eT9.js"),de=require("./common/floating-label-utils/hooks/index.js"),P=({name:n,buttonAriaLabel:a,onClick:c=()=>{},...r})=>a?t.createElement(be.EbayIconButton,{"aria-label":a,icon:n,transparent:!0,onClick:c,...r}):t.createElement(v.EbayIcon,{name:n,...r}),w=n=>t.createElement("span",{...n}),B=({name:n,...a})=>t.createElement(v.EbayIcon,{name:n,...a}),_=n=>t.createElement("span",{...n}),m=n=>typeof n<"u",pe=({type:n="text",invalid:a,fluid:c,multiline:r,onChange:q=()=>{},onInputChange:F=()=>{},onFocus:N=()=>{},onBlur:K=()=>{},onKeyPress:k=()=>{},onKeyUp:U=()=>{},onKeyDown:L=()=>{},onInvalid:R=()=>{},onFloatingLabelInit:D=()=>{},onButtonClick:j=()=>{},autoFocus:E,defaultValue:f="",value:i,forwardedRef:M,inputSize:y="default",floatingLabel:O,children:u,placeholder:S,opaqueLabel:V,...s})=>{var T,h;const[I,W]=t.useState(f),[g,$]=t.useState(f),{label:G,Container:H,onBlur:J,onFocus:Q,ref:X,placeholder:Y}=de.useFloatingLabel({ref:M,inputId:s.id,className:s.className,disabled:s.disabled,label:O,inputSize:y,inputValue:i||g,placeholder:S,invalid:a,type:n,opaqueLabel:V,onMount:D}),C=e=>{var o;N(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!==I&&(q(e,{value:o}),W(o)),J()},z=e=>{const o=e.target;k(e,{value:o==null?void 0:o.value})},A=e=>{const o=e.target;U(e,{value:o==null?void 0:o.value})},ee=e=>{const o=e.target;L(e,{value:o==null?void 0:o.value})},oe=e=>{const o=e.target;R(e,{value:o==null?void 0:o.value})},ne=e=>{j(e,{value:I})};t.useEffect(()=>{E&&C()},[]);const te=e=>{var l;const o=(l=e.target)==null?void 0:l.value;m(i)||$(o),F(e,{value:o})},ae=r?"textarea":"input",se=c?"div":"span",le=p.findComponent(u,B),x=p.findComponent(u,_),ce=(T=x==null?void 0:x.props)==null?void 0:T.id,b=p.findComponent(u,P),d=p.findComponent(u,w),re=(h=d==null?void 0:d.props)==null?void 0:h.id,ie=ue("textbox",s.className,{"textbox--fluid":c,"textbox--large":y==="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:m(i)?i:g,onChange:te,onBlur:Z,onFocus:C,onKeyPress:z,onKeyUp:A,onKeyDown:ee,onInvalid:oe,autoFocus:E,ref:X,placeholder:Y}),d,b&&t.cloneElement(b,{...b.props,onClick:e=>{const{onClick:o=()=>{}}=b.props;o(e),ne(e)}})))},fe=xe.withForwardRef(pe);exports.EbayTextbox=fe;exports.EbayTextboxPostfixIcon=P;exports.EbayTextboxPostfixText=w;exports.EbayTextboxPrefixIcon=B;exports.EbayTextboxPrefixText=_;exports.isControlled=m;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";const e=require("react"),_=require("classnames"),E=require("./icon-TuxfQndO.js"),N=({pressed:n=!1,children:l,className:d,title:s,subtitle:o,layoutType:a="minimal",icon:r,img:t,onToggle:c,...g})=>{const u=b=>{c&&c(b,{pressed:!n})},m=()=>l||e.createElement(e.Fragment,null,e.createElement("p",{className:"toggle-button__title"},s),o&&e.createElement("p",{className:"toggle-button__subtitle"},o)),i=()=>{if(r)return e.createElement("div",{className:"toggle-button__icon"},e.createElement(E.EbayIcon,{name:r}));if(t)return e.createElement("span",{className:"toggle-button__image-container"},t.fillPlacement?e.createElement("span",{role:"img","aria-label":t.alt,className:"toggle-button__image",style:{backgroundImage:`url(${t.src})`,backgroundPosition:t.fillPlacement||"center",backgroundSize:"cover",backgroundRepeat:"no-repeat"}}):e.createElement("span",{className:"toggle-button__image"},e.createElement("img",{src:t.src,alt:t.alt})))};return e.createElement("button",{onClick:u,className:_("toggle-button",{"toggle-button--minimal-layout":a==="minimal","toggle-button--list-layout":a==="list","toggle-button--gallery-layout":a==="gallery"}),"aria-pressed":n,...g},i(),e.createElement("div",{className:"toggle-button__content"},m()))};exports.ToggleButton=N;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";const o=require("react"),v=()=>{const[w,i]=o.useState(!1),[c,e]=o.useState(!1),s=({key:t})=>{const r={ArrowUp:i,ArrowDown:e}[t];r&&r(!1)},d=({key:t})=>{const r={ArrowUp:i,ArrowDown:e}[t];r&&r(!0)};return o.useEffect(()=>(window.addEventListener("keydown",d),window.addEventListener("keyup",s),()=>{window.removeEventListener("keydown",d),window.removeEventListener("keyup",s)}),[]),[w,c]},y=(w,i,c)=>{const[e,s]=o.useState(c),[d,t]=v(),r=o.Children.toArray(w).reduce((n,p,x)=>p.type===i?[...n,x]:n,[]),u=r.indexOf(e),a=()=>{if(u===-1)return e;const n=r[u-1];return n===void 0?e:n},f=()=>{if(u===-1)return e;const n=r[u+1];return n===void 0?e:n};return o.useEffect(()=>{d&&s(a()),t&&s(f())},[d,t]),[e,s]};exports.useKeyPress=v;exports.useRovingIndex=y;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";const o=require("react"),E=require("classnames"),N=require("./common/component-utils/forwardRef/index.js"),p=require("./common/component-utils/utils/index.js"),f=require("./icon-TuxfQndO.js"),_=require("./common/tooltip-utils/constants/index.js"),u=({children:e,className:t,forwardedRef:l,...n})=>(o.Children.only(e),o.cloneElement(e,{ref:l,...n,className:E(t,e.props.className)})),C=({className:e,type:t,isExpanded:l,children:n,forwardedRef:s,...r})=>{var m;const i=p.findComponent(n,u),c=p.excludeComponent(n,u)[0];if(!i)throw new Error("Tooltip: Please use a TooltipHost that defines the host of the tooltip");const a=o.cloneElement(i,{className:`${t}__host`,"aria-expanded":l,"aria-describedby":(m=c==null?void 0:c.props)==null?void 0:m.id,...i.props});return o.createElement("span",{...r,ref:s,className:E(e,t,{[`${t}--expanded`]:l})},a,c)},$=N.withForwardRef(C),b=()=>null,T=({children:e,className:t,type:l="tourtip"})=>o.createElement("div",{className:E(`${l}__footer`,t)},e),x=({id:e,style:t,pointer:l=_.DEFAULT_POINTER_DIRECTION,children:n,type:s="tooltip",showCloseButton:r,a11yCloseText:i,onClose:c})=>{const a=p.findComponent(n,b),m=p.findComponent(n,T),d=p.excludeComponent(n,T);return o.createElement("span",{className:`${s}__overlay`,id:e,role:_.TYPE_ROLES[s]||null,style:{..._.POINTER_STYLES[l],...t}},o.createElement("span",{className:`${s}__pointer ${s}__pointer--${l}`}),o.createElement("span",{className:`${s}__mask`},o.createElement("span",{className:`${s}__cell`},o.createElement("span",{className:`${s}__content`},d),r?o.createElement("button",{...a==null?void 0:a.props,className:`icon-btn icon-btn--transparent ${s}__close`,type:"button","aria-label":i,onClick:c},o.createElement(f.EbayIcon,{name:"close16"})):null,m)))},q=({onExpand:e,onCollapse:t,initialExpanded:l=!1,hostRef:n})=>{const[s,r]=o.useState(l);return{isExpanded:s,expandTooltip:()=>{r(!0),e&&e()},collapseTooltip:()=>{var a;r(!1),t&&t(),(a=n==null?void 0:n.current)==null||a.focus()}}};exports.Tooltip=$;exports.TooltipContent=x;exports.TooltipFooter=T;exports.TooltipHost=u;exports.useTooltip=q;
|
package/utils/index.js
CHANGED
|
@@ -1,13 +1 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
const common_randomId = require("../common/random-id/index.js");
|
|
4
|
-
const debounce = require("../debounce-v8bWAUnY.js");
|
|
5
|
-
const common_componentUtils_forwardRef = require("../common/component-utils/forwardRef/index.js");
|
|
6
|
-
const common_componentUtils_utils = require("../common/component-utils/utils/index.js");
|
|
7
|
-
exports.useRandomId = common_randomId.useRandomId;
|
|
8
|
-
exports.debounce = debounce.debounce;
|
|
9
|
-
exports.withForwardRef = common_componentUtils_forwardRef.withForwardRef;
|
|
10
|
-
exports.excludeComponent = common_componentUtils_utils.excludeComponent;
|
|
11
|
-
exports.filterBy = common_componentUtils_utils.filterBy;
|
|
12
|
-
exports.filterByType = common_componentUtils_utils.filterByType;
|
|
13
|
-
exports.findComponent = common_componentUtils_utils.findComponent;
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("../common/random-id/index.js"),n=require("../debounce-BQsYxxOL.js"),t=require("../common/component-utils/forwardRef/index.js"),e=require("../common/component-utils/utils/index.js");exports.useRandomId=o.useRandomId;exports.debounce=n.debounce;exports.withForwardRef=t.withForwardRef;exports.excludeComponent=e.excludeComponent;exports.filterBy=e.filterBy;exports.filterByType=e.filterByType;exports.findComponent=e.findComponent;
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
if (!Array.prototype.flat) {
|
|
3
|
-
Object.defineProperty(Array.prototype, "flat", {
|
|
4
|
-
configurable: true,
|
|
5
|
-
writable: true,
|
|
6
|
-
value: function(d) {
|
|
7
|
-
const depthArg = typeof d === "undefined" ? 1 : Number(d) || 0;
|
|
8
|
-
const result = [];
|
|
9
|
-
const forEach = result.forEach;
|
|
10
|
-
const flatDeep = (arr, depth) => forEach.call(arr, (val) => {
|
|
11
|
-
if (depth > 0 && Array.isArray(val)) {
|
|
12
|
-
flatDeep(val, depth - 1);
|
|
13
|
-
} else {
|
|
14
|
-
result.push(val);
|
|
15
|
-
}
|
|
16
|
-
});
|
|
17
|
-
flatDeep(this, depthArg);
|
|
18
|
-
return result;
|
|
19
|
-
}
|
|
20
|
-
});
|
|
21
|
-
}
|
package/badge-CR5t7-2L.js
DELETED
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
const React = require("react");
|
|
3
|
-
const classNames = require("classnames");
|
|
4
|
-
const EbayBadge = ({ number, type = "img", className, ...rest }) => {
|
|
5
|
-
const parsed = Math.round(parseInt(String(number), 10));
|
|
6
|
-
return parsed <= 0 ? null : React.createElement("span", { ...rest, className: classNames("badge", className), role: type === "img" ? "img" : void 0, "aria-hidden": type !== "img" }, parsed > 99 ? "99+" : parsed);
|
|
7
|
-
};
|
|
8
|
-
exports.EbayBadge = EbayBadge;
|
package/button-B4bZIgwB.js
DELETED
|
@@ -1,83 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
const React = require("react");
|
|
3
|
-
const classNames$1 = require("classnames");
|
|
4
|
-
const common_componentUtils_forwardRef = require("./common/component-utils/forwardRef/index.js");
|
|
5
|
-
require("./array.polyfill.flat-DyxysTxZ.js");
|
|
6
|
-
const icon = require("./icon-B17Di3YL.js");
|
|
7
|
-
const progressSpinner = require("./progress-spinner-DOFKRtuu.js");
|
|
8
|
-
const classNames = {
|
|
9
|
-
cta: "cta-",
|
|
10
|
-
fake: "fake-",
|
|
11
|
-
expand: "expand-",
|
|
12
|
-
default: ""
|
|
13
|
-
};
|
|
14
|
-
const EbayButtonCell = ({ type = "default", children, ...rest }) => React.createElement(
|
|
15
|
-
"span",
|
|
16
|
-
{ className: `${classNames[type]}btn__cell`, ...rest },
|
|
17
|
-
React.createElement(React.Fragment, null, children)
|
|
18
|
-
);
|
|
19
|
-
const EbayButtonLoading = () => React.createElement(
|
|
20
|
-
EbayButtonCell,
|
|
21
|
-
null,
|
|
22
|
-
React.createElement(progressSpinner.EbayProgressSpinner, null)
|
|
23
|
-
);
|
|
24
|
-
const EbayButtonText = ({ className, children }) => React.createElement("span", { className: classNames$1(className, "btn__text") }, children);
|
|
25
|
-
const EbayButtonExpand = ({ children }) => children ? React.createElement(
|
|
26
|
-
EbayButtonCell,
|
|
27
|
-
null,
|
|
28
|
-
React.createElement(EbayButtonText, null, children),
|
|
29
|
-
React.createElement(icon.EbayIcon, { name: "chevronDown12" })
|
|
30
|
-
) : React.createElement(icon.EbayIcon, { name: "chevronDown12" });
|
|
31
|
-
const EbayButton = ({ priority = "secondary", variant = "standard", size = "regular", bodyState, split, transparent = false, fluid = false, disabled, partiallyDisabled, children, onKeyDown = () => {
|
|
32
|
-
}, onEscape = () => {
|
|
33
|
-
}, truncate = false, href, className: extraClasses, forwardedRef, borderless, fixedHeight, ...rest }) => {
|
|
34
|
-
const classPrefix = href ? "fake-btn" : "btn";
|
|
35
|
-
const priorityStyles = {
|
|
36
|
-
primary: `${classPrefix}--primary`,
|
|
37
|
-
secondary: `${classPrefix}--secondary`,
|
|
38
|
-
tertiary: `${classPrefix}--tertiary`,
|
|
39
|
-
none: ""
|
|
40
|
-
};
|
|
41
|
-
const sizeStyles = {
|
|
42
|
-
large: `${classPrefix}--large`,
|
|
43
|
-
small: `${classPrefix}--small`,
|
|
44
|
-
regular: "",
|
|
45
|
-
default: ""
|
|
46
|
-
};
|
|
47
|
-
const splitStyles = {
|
|
48
|
-
start: `${classPrefix}--split-start`,
|
|
49
|
-
end: `${classPrefix}--split-end`
|
|
50
|
-
};
|
|
51
|
-
const isDestructive = variant === "destructive";
|
|
52
|
-
const isForm = variant === "form";
|
|
53
|
-
const isLoading = bodyState === "loading";
|
|
54
|
-
const isExpand = bodyState === "expand";
|
|
55
|
-
const isSlim = isForm && (isIconOnly(children) || isExpand && !children);
|
|
56
|
-
const className = classNames$1(classPrefix, extraClasses, priorityStyles[isForm || borderless ? "none" : priority], sizeStyles[size], splitStyles[split], isDestructive && `${classPrefix}--destructive`, isForm && `${classPrefix}--form`, isSlim && `${classPrefix}--slim`, transparent && `${classPrefix}--transparent`, fluid && `${classPrefix}--fluid`, truncate && `${classPrefix}--truncated`, borderless && `${classPrefix}--borderless`, fixedHeight && (sizeStyles[size] ? `${sizeStyles[size]}-${fixedHeight}` : `${classPrefix}--fixed-height`));
|
|
57
|
-
const keyDownHandler = (e) => {
|
|
58
|
-
onKeyDown(e);
|
|
59
|
-
if (e.key === "Escape" || e.key === "Esc") {
|
|
60
|
-
onEscape(e);
|
|
61
|
-
}
|
|
62
|
-
};
|
|
63
|
-
const bodyContent = getBodyContent(children, { isLoading, isExpand });
|
|
64
|
-
const ariaLive = isLoading ? `polite` : null;
|
|
65
|
-
return href ? React.createElement("a", { className, href: disabled ? void 0 : href, ref: forwardedRef, onKeyDown: keyDownHandler, "aria-live": ariaLive, ...rest }, bodyContent) : React.createElement("button", { disabled, "aria-disabled": partiallyDisabled, "aria-live": ariaLive, className, ref: forwardedRef, onKeyDown: keyDownHandler, ...rest }, bodyContent);
|
|
66
|
-
};
|
|
67
|
-
function getBodyContent(children, { isLoading, isExpand }) {
|
|
68
|
-
switch (true) {
|
|
69
|
-
case isLoading:
|
|
70
|
-
return React.createElement(EbayButtonLoading, null);
|
|
71
|
-
case isExpand:
|
|
72
|
-
return React.createElement(EbayButtonExpand, null, children);
|
|
73
|
-
default:
|
|
74
|
-
return children;
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
function isIconOnly(children) {
|
|
78
|
-
const childrenArray = React.Children.toArray(children);
|
|
79
|
-
return childrenArray.length === 1 && childrenArray[0].type === icon.EbayIcon;
|
|
80
|
-
}
|
|
81
|
-
const EbayButton$1 = common_componentUtils_forwardRef.withForwardRef(EbayButton);
|
|
82
|
-
exports.EbayButton = EbayButton$1;
|
|
83
|
-
exports.EbayButtonCell = EbayButtonCell;
|