@wistia/ui 0.4.4 → 0.4.5-beta.29a2dc1f.0bf9afa
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/dist/index.cjs +499 -431
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.mts +50 -36
- package/dist/index.d.ts +50 -36
- package/dist/index.mjs +383 -316
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
|
|
2
2
|
/*
|
|
3
|
-
* @license @wistia/ui v0.4.
|
|
3
|
+
* @license @wistia/ui v0.4.5-beta.29a2dc1f.0bf9afa
|
|
4
4
|
*
|
|
5
5
|
* Copyright (c) 2024-2025, Wistia, Inc. and its affiliates.
|
|
6
6
|
*
|
|
@@ -1544,6 +1544,83 @@ var useActiveMq = () => {
|
|
|
1544
1544
|
});
|
|
1545
1545
|
};
|
|
1546
1546
|
|
|
1547
|
+
// src/hooks/useKey/useKey.ts
|
|
1548
|
+
import { useMemo as useMemo2 } from "react";
|
|
1549
|
+
|
|
1550
|
+
// src/private/hooks/useEvent/useEvent.ts
|
|
1551
|
+
import { useEffect as useEffect2, useRef as useRef2 } from "react";
|
|
1552
|
+
var isEventTargetSupported = (eventTarget) => (
|
|
1553
|
+
// @ts-expect-error the compiler thinks that addEventListener may not exist on eventTarget, but we still need to check it.
|
|
1554
|
+
// eslint-disable-next-line @typescript-eslint/strict-boolean-expressions
|
|
1555
|
+
!!(typeof eventTarget === "object" && eventTarget?.addEventListener)
|
|
1556
|
+
);
|
|
1557
|
+
var useEvent = (eventName, eventHandler, eventTarget = window, eventOptions = {}) => {
|
|
1558
|
+
const savedEventHandler = useRef2();
|
|
1559
|
+
const savedEventOptions = useRef2();
|
|
1560
|
+
useEffect2(() => {
|
|
1561
|
+
savedEventHandler.current = eventHandler;
|
|
1562
|
+
}, [eventHandler]);
|
|
1563
|
+
useEffect2(() => {
|
|
1564
|
+
savedEventOptions.current = eventOptions;
|
|
1565
|
+
}, [eventOptions]);
|
|
1566
|
+
useEffect2(() => {
|
|
1567
|
+
if (!eventName || !isEventTargetSupported(eventTarget)) {
|
|
1568
|
+
return;
|
|
1569
|
+
}
|
|
1570
|
+
const eventListener = (event) => {
|
|
1571
|
+
if (savedEventHandler.current !== void 0) {
|
|
1572
|
+
return savedEventHandler.current(event);
|
|
1573
|
+
}
|
|
1574
|
+
return () => {
|
|
1575
|
+
};
|
|
1576
|
+
};
|
|
1577
|
+
eventTarget.addEventListener(eventName, eventListener, savedEventOptions.current);
|
|
1578
|
+
return () => {
|
|
1579
|
+
eventTarget.removeEventListener(eventName, eventListener, savedEventOptions.current);
|
|
1580
|
+
};
|
|
1581
|
+
}, [eventName, eventTarget, savedEventOptions]);
|
|
1582
|
+
};
|
|
1583
|
+
|
|
1584
|
+
// src/hooks/useKey/useKey.ts
|
|
1585
|
+
var createKeyPredicate = (keyFilter) => {
|
|
1586
|
+
if (typeof keyFilter === "function") {
|
|
1587
|
+
return keyFilter;
|
|
1588
|
+
}
|
|
1589
|
+
if (typeof keyFilter === "string") {
|
|
1590
|
+
return (event) => event.key === keyFilter;
|
|
1591
|
+
}
|
|
1592
|
+
if (keyFilter !== null && keyFilter !== void 0 && !!keyFilter) {
|
|
1593
|
+
return () => true;
|
|
1594
|
+
}
|
|
1595
|
+
return () => false;
|
|
1596
|
+
};
|
|
1597
|
+
var useKey = (key, eventHandler, options = {}, dependencies = [key]) => {
|
|
1598
|
+
const { eventName = "keydown", eventTarget, eventOptions } = options;
|
|
1599
|
+
const memoizedEventHandler = useMemo2(() => {
|
|
1600
|
+
const predicate = createKeyPredicate(key);
|
|
1601
|
+
return (handlerEvent) => {
|
|
1602
|
+
if (["INPUT", "TEXTAREA", "SELECT"].includes(document.activeElement?.nodeName ?? "") || document.activeElement?.isContentEditable) {
|
|
1603
|
+
return;
|
|
1604
|
+
}
|
|
1605
|
+
if (predicate(handlerEvent)) {
|
|
1606
|
+
return eventHandler(handlerEvent);
|
|
1607
|
+
}
|
|
1608
|
+
};
|
|
1609
|
+
}, dependencies);
|
|
1610
|
+
useEvent(eventName, memoizedEventHandler, eventTarget, eventOptions);
|
|
1611
|
+
};
|
|
1612
|
+
|
|
1613
|
+
// src/hooks/useAriaLive/useAriaLive.tsx
|
|
1614
|
+
import { useContext } from "react";
|
|
1615
|
+
import { isNil as isNil2 } from "@wistia/type-guards";
|
|
1616
|
+
var useAriaLive = () => {
|
|
1617
|
+
const context = useContext(AriaLiveContext);
|
|
1618
|
+
if (isNil2(context)) {
|
|
1619
|
+
throw new Error("useAriaLive must be used within an AriaLiveProvider");
|
|
1620
|
+
}
|
|
1621
|
+
return context;
|
|
1622
|
+
};
|
|
1623
|
+
|
|
1547
1624
|
// src/hooks/useToast/useToast.tsx
|
|
1548
1625
|
import { useCallback as useCallback3 } from "react";
|
|
1549
1626
|
import { toast as sonnerToast } from "sonner";
|
|
@@ -1828,17 +1905,6 @@ var useToast = () => {
|
|
|
1828
1905
|
);
|
|
1829
1906
|
};
|
|
1830
1907
|
|
|
1831
|
-
// src/hooks/useAriaLive/useAriaLive.tsx
|
|
1832
|
-
import { useContext } from "react";
|
|
1833
|
-
import { isNil as isNil2 } from "@wistia/type-guards";
|
|
1834
|
-
var useAriaLive = () => {
|
|
1835
|
-
const context = useContext(AriaLiveContext);
|
|
1836
|
-
if (isNil2(context)) {
|
|
1837
|
-
throw new Error("useAriaLive must be used within an AriaLiveProvider");
|
|
1838
|
-
}
|
|
1839
|
-
return context;
|
|
1840
|
-
};
|
|
1841
|
-
|
|
1842
1908
|
// src/components/ActionButton/ActionButton.tsx
|
|
1843
1909
|
import { forwardRef as forwardRef3 } from "react";
|
|
1844
1910
|
import styled6, { css as css14 } from "styled-components";
|
|
@@ -5211,13 +5277,13 @@ var iconMap = {
|
|
|
5211
5277
|
|
|
5212
5278
|
// src/private/hooks/useResponsiveProp/useResponsiveProp.ts
|
|
5213
5279
|
import { isNotUndefined, isRecord, isUndefined } from "@wistia/type-guards";
|
|
5214
|
-
import { useMemo as
|
|
5280
|
+
import { useMemo as useMemo3 } from "react";
|
|
5215
5281
|
var isResponsiveObject = (values) => {
|
|
5216
5282
|
return typeof values === "object" && values !== null && !Array.isArray(values) && "base" in values;
|
|
5217
5283
|
};
|
|
5218
5284
|
var useResponsiveProp = (values) => {
|
|
5219
5285
|
const activeMediaQueries = useActiveMq();
|
|
5220
|
-
return
|
|
5286
|
+
return useMemo3(() => {
|
|
5221
5287
|
if (isRecord(values) && isResponsiveObject(values)) {
|
|
5222
5288
|
const mq2 = activeMediaQueries.find((key) => key in values);
|
|
5223
5289
|
return isNotUndefined(mq2) && isNotUndefined(values[mq2]) ? values[mq2] : values.base;
|
|
@@ -5665,7 +5731,7 @@ var ActionButton = forwardRef3(
|
|
|
5665
5731
|
ActionButton.displayName = "ActionButton";
|
|
5666
5732
|
|
|
5667
5733
|
// src/components/Avatar/Avatar.tsx
|
|
5668
|
-
import { useState as useState4, useMemo as
|
|
5734
|
+
import { useState as useState4, useMemo as useMemo4 } from "react";
|
|
5669
5735
|
import { isNil as isNil6 } from "@wistia/type-guards";
|
|
5670
5736
|
import styled8 from "styled-components";
|
|
5671
5737
|
|
|
@@ -5806,7 +5872,7 @@ var Avatar = ({
|
|
|
5806
5872
|
onImageLoad?.("initials");
|
|
5807
5873
|
};
|
|
5808
5874
|
const avatarSize = heightAndWidth ?? avatarSizeMap[size];
|
|
5809
|
-
const avatarColor =
|
|
5875
|
+
const avatarColor = useMemo4(() => chooseColorScheme(name), [name]);
|
|
5810
5876
|
const showInitials = isNil6(imageUrl) || imageLoadState === "error";
|
|
5811
5877
|
return /* @__PURE__ */ jsx165(
|
|
5812
5878
|
AvatarWrapper,
|
|
@@ -6006,10 +6072,57 @@ var Box = ({
|
|
|
6006
6072
|
};
|
|
6007
6073
|
Box.displayName = "Box";
|
|
6008
6074
|
|
|
6009
|
-
// src/components/
|
|
6075
|
+
// src/components/Breadcrumbs/Breadcrumbs.tsx
|
|
6010
6076
|
import styled11 from "styled-components";
|
|
6011
|
-
import { isNil as isNil8 } from "@wistia/type-guards";
|
|
6012
6077
|
import { jsx as jsx168 } from "react/jsx-runtime";
|
|
6078
|
+
var StyledBreadcrumbs = styled11.nav`
|
|
6079
|
+
display: flex;
|
|
6080
|
+
align-items: center;
|
|
6081
|
+
gap: var(--wui-space-01);
|
|
6082
|
+
|
|
6083
|
+
> svg:last-of-type {
|
|
6084
|
+
display: none;
|
|
6085
|
+
}
|
|
6086
|
+
`;
|
|
6087
|
+
var Breadcrumbs = ({ children, ...props }) => {
|
|
6088
|
+
return /* @__PURE__ */ jsx168(
|
|
6089
|
+
StyledBreadcrumbs,
|
|
6090
|
+
{
|
|
6091
|
+
"aria-label": "Breadcrumbs",
|
|
6092
|
+
...props,
|
|
6093
|
+
children
|
|
6094
|
+
}
|
|
6095
|
+
);
|
|
6096
|
+
};
|
|
6097
|
+
Breadcrumbs.displayName = "Breadcrumbs";
|
|
6098
|
+
|
|
6099
|
+
// src/components/Breadcrumbs/Breadcrumb.tsx
|
|
6100
|
+
import { Fragment as Fragment2, jsx as jsx169, jsxs as jsxs8 } from "react/jsx-runtime";
|
|
6101
|
+
var Breadcrumb = ({ icon, href, children }) => {
|
|
6102
|
+
return /* @__PURE__ */ jsxs8(Fragment2, { children: [
|
|
6103
|
+
/* @__PURE__ */ jsx169(
|
|
6104
|
+
Button,
|
|
6105
|
+
{
|
|
6106
|
+
href,
|
|
6107
|
+
leftIcon: icon,
|
|
6108
|
+
variant: "ghost",
|
|
6109
|
+
children
|
|
6110
|
+
}
|
|
6111
|
+
),
|
|
6112
|
+
/* @__PURE__ */ jsx169(
|
|
6113
|
+
Icon,
|
|
6114
|
+
{
|
|
6115
|
+
size: "sm",
|
|
6116
|
+
type: "caret-right"
|
|
6117
|
+
}
|
|
6118
|
+
)
|
|
6119
|
+
] });
|
|
6120
|
+
};
|
|
6121
|
+
|
|
6122
|
+
// src/components/ButtonGroup/ButtonGroup.tsx
|
|
6123
|
+
import styled12 from "styled-components";
|
|
6124
|
+
import { isNil as isNil8 } from "@wistia/type-guards";
|
|
6125
|
+
import { jsx as jsx170 } from "react/jsx-runtime";
|
|
6013
6126
|
var getAlignment = (align) => {
|
|
6014
6127
|
if (align === "center") {
|
|
6015
6128
|
return "center";
|
|
@@ -6022,7 +6135,7 @@ var getAlignment = (align) => {
|
|
|
6022
6135
|
}
|
|
6023
6136
|
return "flex-start";
|
|
6024
6137
|
};
|
|
6025
|
-
var ButtonGroupComponent =
|
|
6138
|
+
var ButtonGroupComponent = styled12.div`
|
|
6026
6139
|
display: flex;
|
|
6027
6140
|
|
|
6028
6141
|
/* this helps ensure that primary buttons appear at the top of the column */
|
|
@@ -6051,7 +6164,7 @@ var ButtonGroup = ({
|
|
|
6051
6164
|
if (isNil8(children)) {
|
|
6052
6165
|
return null;
|
|
6053
6166
|
}
|
|
6054
|
-
return /* @__PURE__ */
|
|
6167
|
+
return /* @__PURE__ */ jsx170(
|
|
6055
6168
|
ButtonGroupComponent,
|
|
6056
6169
|
{
|
|
6057
6170
|
$align: align,
|
|
@@ -6064,9 +6177,9 @@ var ButtonGroup = ({
|
|
|
6064
6177
|
ButtonGroup.displayName = "ButtonGroup";
|
|
6065
6178
|
|
|
6066
6179
|
// src/components/Card/Card.tsx
|
|
6067
|
-
import
|
|
6068
|
-
import { jsx as
|
|
6069
|
-
var StyledCard =
|
|
6180
|
+
import styled13 from "styled-components";
|
|
6181
|
+
import { jsx as jsx171 } from "react/jsx-runtime";
|
|
6182
|
+
var StyledCard = styled13(Box)`
|
|
6070
6183
|
${({ $colorScheme }) => getColorScheme($colorScheme)};
|
|
6071
6184
|
box-sizing: border-box;
|
|
6072
6185
|
padding: ${({ $paddingSize }) => `var(--wui-${$paddingSize})`};
|
|
@@ -6099,7 +6212,7 @@ var Card = ({
|
|
|
6099
6212
|
prominence = "secondary",
|
|
6100
6213
|
border = false,
|
|
6101
6214
|
...props
|
|
6102
|
-
}) => /* @__PURE__ */
|
|
6215
|
+
}) => /* @__PURE__ */ jsx171(
|
|
6103
6216
|
StyledCard,
|
|
6104
6217
|
{
|
|
6105
6218
|
$backgroundColor: prominenceMap[prominence].backgroundColor,
|
|
@@ -6117,15 +6230,15 @@ Card.displayName = "Card";
|
|
|
6117
6230
|
// src/components/Checkbox/Checkbox.tsx
|
|
6118
6231
|
import { forwardRef as forwardRef6, useId } from "react";
|
|
6119
6232
|
import { Root as CheckboxRoot, Indicator as CheckboxIndicator } from "@radix-ui/react-checkbox";
|
|
6120
|
-
import
|
|
6233
|
+
import styled17 from "styled-components";
|
|
6121
6234
|
import { isNonEmptyString as isNonEmptyString2 } from "@wistia/type-guards";
|
|
6122
6235
|
|
|
6123
6236
|
// src/components/Label/Label.tsx
|
|
6124
|
-
import
|
|
6237
|
+
import styled15, { css as css16 } from "styled-components";
|
|
6125
6238
|
|
|
6126
6239
|
// src/components/Heading/Heading.tsx
|
|
6127
6240
|
import { forwardRef as forwardRef5 } from "react";
|
|
6128
|
-
import
|
|
6241
|
+
import styled14, { css as css15 } from "styled-components";
|
|
6129
6242
|
|
|
6130
6243
|
// src/private/helpers/makePolymorphic/makePolymorphic.tsx
|
|
6131
6244
|
var makePolymorphic = (component) => {
|
|
@@ -6133,7 +6246,7 @@ var makePolymorphic = (component) => {
|
|
|
6133
6246
|
};
|
|
6134
6247
|
|
|
6135
6248
|
// src/components/Heading/Heading.tsx
|
|
6136
|
-
import { jsx as
|
|
6249
|
+
import { jsx as jsx172 } from "react/jsx-runtime";
|
|
6137
6250
|
var heroStyle = css15`
|
|
6138
6251
|
--font-family: var(--wui-typography-heading-hero-family);
|
|
6139
6252
|
--font-size: var(--wui-typography-heading-hero-size);
|
|
@@ -6186,7 +6299,7 @@ var variantStyleMap = {
|
|
|
6186
6299
|
heading6: heading6TextStyle
|
|
6187
6300
|
};
|
|
6188
6301
|
var DEFAULT_ELEMENT = "h1";
|
|
6189
|
-
var StyledHeading =
|
|
6302
|
+
var StyledHeading = styled14.div`
|
|
6190
6303
|
${({ $colorScheme }) => getColorScheme($colorScheme)};
|
|
6191
6304
|
font-family: var(--font-family);
|
|
6192
6305
|
font-size: var(--font-size);
|
|
@@ -6229,7 +6342,7 @@ var HeadingComponent = forwardRef5(
|
|
|
6229
6342
|
variant = "heading1",
|
|
6230
6343
|
renderAs,
|
|
6231
6344
|
...otherProps
|
|
6232
|
-
}, ref) => /* @__PURE__ */
|
|
6345
|
+
}, ref) => /* @__PURE__ */ jsx172(
|
|
6233
6346
|
StyledHeading,
|
|
6234
6347
|
{
|
|
6235
6348
|
ref,
|
|
@@ -6249,7 +6362,7 @@ HeadingComponent.displayName = "Heading";
|
|
|
6249
6362
|
var Heading = makePolymorphic(HeadingComponent);
|
|
6250
6363
|
|
|
6251
6364
|
// src/components/Label/Label.tsx
|
|
6252
|
-
import { jsx as
|
|
6365
|
+
import { jsx as jsx173 } from "react/jsx-runtime";
|
|
6253
6366
|
var requiredStyle = css16`
|
|
6254
6367
|
&::after {
|
|
6255
6368
|
color: var(--wui-color-text-error);
|
|
@@ -6261,7 +6374,7 @@ var requiredStyle = css16`
|
|
|
6261
6374
|
var disabledStyle = css16`
|
|
6262
6375
|
color: var(--wui-color-text-disabled);
|
|
6263
6376
|
`;
|
|
6264
|
-
var StyledLabel2 =
|
|
6377
|
+
var StyledLabel2 = styled15(Heading).attrs({
|
|
6265
6378
|
variant: "heading6",
|
|
6266
6379
|
renderAs: "label"
|
|
6267
6380
|
})`
|
|
@@ -6290,7 +6403,7 @@ var Label = ({
|
|
|
6290
6403
|
required = false,
|
|
6291
6404
|
screenReaderOnly = false,
|
|
6292
6405
|
...otherProps
|
|
6293
|
-
}) => /* @__PURE__ */
|
|
6406
|
+
}) => /* @__PURE__ */ jsx173(
|
|
6294
6407
|
StyledLabel2,
|
|
6295
6408
|
{
|
|
6296
6409
|
...otherProps,
|
|
@@ -6304,10 +6417,10 @@ var Label = ({
|
|
|
6304
6417
|
Label.displayName = "Label";
|
|
6305
6418
|
|
|
6306
6419
|
// src/components/Label/LabelDescription.tsx
|
|
6307
|
-
import
|
|
6420
|
+
import styled16 from "styled-components";
|
|
6308
6421
|
import { isNil as isNil9 } from "@wistia/type-guards";
|
|
6309
|
-
import { jsx as
|
|
6310
|
-
var StyledLabelDescription =
|
|
6422
|
+
import { jsx as jsx174 } from "react/jsx-runtime";
|
|
6423
|
+
var StyledLabelDescription = styled16.div`
|
|
6311
6424
|
color: var(--wui-color-text-secondary);
|
|
6312
6425
|
font-size: var(--wui-typography-body-4-size);
|
|
6313
6426
|
font-weight: var(--wui-typography-body-4-weight);
|
|
@@ -6320,13 +6433,13 @@ var LabelDescription = ({
|
|
|
6320
6433
|
if (isNil9(children)) {
|
|
6321
6434
|
return null;
|
|
6322
6435
|
}
|
|
6323
|
-
return /* @__PURE__ */
|
|
6436
|
+
return /* @__PURE__ */ jsx174(StyledLabelDescription, { ...props, children });
|
|
6324
6437
|
};
|
|
6325
6438
|
LabelDescription.displayName = "LabelDescription";
|
|
6326
6439
|
|
|
6327
6440
|
// src/components/Checkbox/Checkbox.tsx
|
|
6328
|
-
import { jsx as
|
|
6329
|
-
var CheckIcon = () => /* @__PURE__ */
|
|
6441
|
+
import { jsx as jsx175, jsxs as jsxs9 } from "react/jsx-runtime";
|
|
6442
|
+
var CheckIcon = () => /* @__PURE__ */ jsx175(
|
|
6330
6443
|
"svg",
|
|
6331
6444
|
{
|
|
6332
6445
|
fill: "inherit",
|
|
@@ -6334,7 +6447,7 @@ var CheckIcon = () => /* @__PURE__ */ jsx173(
|
|
|
6334
6447
|
viewBox: "0 0 10 8",
|
|
6335
6448
|
width: "10",
|
|
6336
6449
|
xmlns: "http://www.w3.org/2000/svg",
|
|
6337
|
-
children: /* @__PURE__ */
|
|
6450
|
+
children: /* @__PURE__ */ jsx175(
|
|
6338
6451
|
"path",
|
|
6339
6452
|
{
|
|
6340
6453
|
d: "M3.47281 7.19303L0.377565 4.07999C0.191609 3.89297 0.191609 3.58973 0.377565 3.40268L1.05098 2.72537C1.23694 2.53833 1.53847 2.53833 1.72442 2.72537L3.80953 4.82245L8.27558 0.330729C8.46154 0.143704 8.76306 0.143704 8.94902 0.330729L9.62244 1.00804C9.8084 1.19506 9.8084 1.49831 9.62244 1.68535L4.14624 7.19305C3.96027 7.38008 3.65876 7.38008 3.47281 7.19303Z",
|
|
@@ -6343,7 +6456,7 @@ var CheckIcon = () => /* @__PURE__ */ jsx173(
|
|
|
6343
6456
|
)
|
|
6344
6457
|
}
|
|
6345
6458
|
);
|
|
6346
|
-
var StyledCheckboxWrapper =
|
|
6459
|
+
var StyledCheckboxWrapper = styled17.div`
|
|
6347
6460
|
display: flex;
|
|
6348
6461
|
align-items: center;
|
|
6349
6462
|
cursor: pointer;
|
|
@@ -6357,7 +6470,7 @@ var StyledCheckboxWrapper = styled16.div`
|
|
|
6357
6470
|
background-color: #efefef;
|
|
6358
6471
|
}
|
|
6359
6472
|
`;
|
|
6360
|
-
var StyledCheckboxRoot =
|
|
6473
|
+
var StyledCheckboxRoot = styled17(CheckboxRoot)`
|
|
6361
6474
|
all: unset; /* CheckboxRoot renders as a button element, so we need to reset all styles */
|
|
6362
6475
|
background-color: var(--wui-color-bg-fill-white);
|
|
6363
6476
|
min-width: 16px;
|
|
@@ -6391,10 +6504,10 @@ var StyledCheckboxRoot = styled16(CheckboxRoot)`
|
|
|
6391
6504
|
/* TODO Lamp to design focus state */
|
|
6392
6505
|
}
|
|
6393
6506
|
`;
|
|
6394
|
-
var StyledCheckboxIndicator =
|
|
6507
|
+
var StyledCheckboxIndicator = styled17(CheckboxIndicator)`
|
|
6395
6508
|
display: flex;
|
|
6396
6509
|
`;
|
|
6397
|
-
var StyledLabelWrapper =
|
|
6510
|
+
var StyledLabelWrapper = styled17.div`
|
|
6398
6511
|
display: flex;
|
|
6399
6512
|
flex-direction: column;
|
|
6400
6513
|
margin-left: var(--wui-space-02);
|
|
@@ -6415,8 +6528,8 @@ var Checkbox = forwardRef6(
|
|
|
6415
6528
|
}, ref) => {
|
|
6416
6529
|
const generatedId = useId();
|
|
6417
6530
|
const computedId = isNonEmptyString2(id) ? id : `wistia-ui-checkbox-group-${generatedId}`;
|
|
6418
|
-
return /* @__PURE__ */
|
|
6419
|
-
/* @__PURE__ */
|
|
6531
|
+
return /* @__PURE__ */ jsxs9(StyledCheckboxWrapper, { children: [
|
|
6532
|
+
/* @__PURE__ */ jsx175(
|
|
6420
6533
|
StyledCheckboxRoot,
|
|
6421
6534
|
{
|
|
6422
6535
|
ref,
|
|
@@ -6441,11 +6554,11 @@ var Checkbox = forwardRef6(
|
|
|
6441
6554
|
required,
|
|
6442
6555
|
value,
|
|
6443
6556
|
...otherProps,
|
|
6444
|
-
children: /* @__PURE__ */
|
|
6557
|
+
children: /* @__PURE__ */ jsx175(StyledCheckboxIndicator, { children: /* @__PURE__ */ jsx175(CheckIcon, {}) })
|
|
6445
6558
|
}
|
|
6446
6559
|
),
|
|
6447
|
-
/* @__PURE__ */
|
|
6448
|
-
/* @__PURE__ */
|
|
6560
|
+
/* @__PURE__ */ jsxs9(StyledLabelWrapper, { children: [
|
|
6561
|
+
/* @__PURE__ */ jsx175(
|
|
6449
6562
|
Label,
|
|
6450
6563
|
{
|
|
6451
6564
|
disabled,
|
|
@@ -6454,7 +6567,7 @@ var Checkbox = forwardRef6(
|
|
|
6454
6567
|
children: label
|
|
6455
6568
|
}
|
|
6456
6569
|
),
|
|
6457
|
-
/* @__PURE__ */
|
|
6570
|
+
/* @__PURE__ */ jsx175(LabelDescription, { children: description })
|
|
6458
6571
|
] })
|
|
6459
6572
|
] });
|
|
6460
6573
|
}
|
|
@@ -6462,8 +6575,8 @@ var Checkbox = forwardRef6(
|
|
|
6462
6575
|
Checkbox.displayName = "Checkbox";
|
|
6463
6576
|
|
|
6464
6577
|
// src/components/Divider/Divider.tsx
|
|
6465
|
-
import
|
|
6466
|
-
import { jsx as
|
|
6578
|
+
import styled18, { css as css17 } from "styled-components";
|
|
6579
|
+
import { jsx as jsx176 } from "react/jsx-runtime";
|
|
6467
6580
|
var horizontalBorderCss = css17`
|
|
6468
6581
|
border-top-color: var(--wui-color-border);
|
|
6469
6582
|
border-top-style: solid;
|
|
@@ -6477,7 +6590,7 @@ var verticalBorderCss = css17`
|
|
|
6477
6590
|
min-height: 100%;
|
|
6478
6591
|
width: 1px;
|
|
6479
6592
|
`;
|
|
6480
|
-
var DividerComponent =
|
|
6593
|
+
var DividerComponent = styled18.div`
|
|
6481
6594
|
${({ $orientation }) => {
|
|
6482
6595
|
switch ($orientation) {
|
|
6483
6596
|
case "vertical":
|
|
@@ -6492,7 +6605,7 @@ var Divider = ({
|
|
|
6492
6605
|
orientation = "horizontal",
|
|
6493
6606
|
...otherProps
|
|
6494
6607
|
}) => {
|
|
6495
|
-
return /* @__PURE__ */
|
|
6608
|
+
return /* @__PURE__ */ jsx176(
|
|
6496
6609
|
DividerComponent,
|
|
6497
6610
|
{
|
|
6498
6611
|
$orientation: orientation,
|
|
@@ -6505,16 +6618,16 @@ var Divider = ({
|
|
|
6505
6618
|
Divider.displayName = "Divider";
|
|
6506
6619
|
|
|
6507
6620
|
// src/components/Form/Form.tsx
|
|
6508
|
-
import { forwardRef as forwardRef8, useRef as
|
|
6509
|
-
import
|
|
6621
|
+
import { forwardRef as forwardRef8, useRef as useRef3, useMemo as useMemo5, createContext as createContext2, useState as useState5, useId as useId2 } from "react";
|
|
6622
|
+
import styled20 from "styled-components";
|
|
6510
6623
|
import { isNotUndefined as isNotUndefined4, isUndefined as isUndefined3 } from "@wistia/type-guards";
|
|
6511
6624
|
|
|
6512
6625
|
// src/components/Stack/Stack.tsx
|
|
6513
6626
|
import { forwardRef as forwardRef7 } from "react";
|
|
6514
|
-
import
|
|
6515
|
-
import { jsx as
|
|
6627
|
+
import styled19 from "styled-components";
|
|
6628
|
+
import { jsx as jsx177 } from "react/jsx-runtime";
|
|
6516
6629
|
var DEFAULT_ELEMENT2 = "div";
|
|
6517
|
-
var StyledStack =
|
|
6630
|
+
var StyledStack = styled19.div`
|
|
6518
6631
|
display: flex;
|
|
6519
6632
|
flex-direction: ${({ $direction }) => $direction === "horizontal" ? "row" : "column"};
|
|
6520
6633
|
gap: ${({ $gap }) => `var(--wui-${$gap})`};
|
|
@@ -6523,7 +6636,7 @@ var StackComponent = forwardRef7(
|
|
|
6523
6636
|
({ renderAs, direction = "vertical", gap = "space-02", ...props }, ref) => {
|
|
6524
6637
|
const responsiveGap = useResponsiveProp(gap);
|
|
6525
6638
|
const responsiveDirection = useResponsiveProp(direction);
|
|
6526
|
-
return /* @__PURE__ */
|
|
6639
|
+
return /* @__PURE__ */ jsx177(
|
|
6527
6640
|
StyledStack,
|
|
6528
6641
|
{
|
|
6529
6642
|
ref,
|
|
@@ -6539,8 +6652,8 @@ StackComponent.displayName = "Stack";
|
|
|
6539
6652
|
var Stack = makePolymorphic(StackComponent);
|
|
6540
6653
|
|
|
6541
6654
|
// src/components/Form/Form.tsx
|
|
6542
|
-
import { jsx as
|
|
6543
|
-
var StyledForm =
|
|
6655
|
+
import { jsx as jsx178 } from "react/jsx-runtime";
|
|
6656
|
+
var StyledForm = styled20.form`
|
|
6544
6657
|
--form-default-width: 690px;
|
|
6545
6658
|
|
|
6546
6659
|
max-width: ${({ $fullWidth }) => $fullWidth ? "auto" : "var(--form-default-width)"};
|
|
@@ -6555,7 +6668,7 @@ var FormContext = createContext2({
|
|
|
6555
6668
|
var FormComponent = ({ children, action, values = {}, validate, fullWidth = false, ...props }, forwardedRef) => {
|
|
6556
6669
|
const [errors, setErrors] = useState5({});
|
|
6557
6670
|
const [hasSubmitted, setHasSubmitted] = useState5(false);
|
|
6558
|
-
const innerRef =
|
|
6671
|
+
const innerRef = useRef3();
|
|
6559
6672
|
const ref = forwardedRef ?? innerRef;
|
|
6560
6673
|
const autoId = useId2();
|
|
6561
6674
|
const id = props.id ?? autoId;
|
|
@@ -6599,7 +6712,7 @@ var FormComponent = ({ children, action, values = {}, validate, fullWidth = fals
|
|
|
6599
6712
|
void action(null);
|
|
6600
6713
|
}
|
|
6601
6714
|
};
|
|
6602
|
-
const context =
|
|
6715
|
+
const context = useMemo5(() => {
|
|
6603
6716
|
return {
|
|
6604
6717
|
values,
|
|
6605
6718
|
errors,
|
|
@@ -6609,7 +6722,7 @@ var FormComponent = ({ children, action, values = {}, validate, fullWidth = fals
|
|
|
6609
6722
|
}, [values, errors, id, hasSubmitted]);
|
|
6610
6723
|
return (
|
|
6611
6724
|
// @ts-expect-error - generic context providers are a giant pain
|
|
6612
|
-
/* @__PURE__ */
|
|
6725
|
+
/* @__PURE__ */ jsx178(FormContext.Provider, { value: context, children: /* @__PURE__ */ jsx178(
|
|
6613
6726
|
Stack,
|
|
6614
6727
|
{
|
|
6615
6728
|
gap: "space-05",
|
|
@@ -6666,23 +6779,23 @@ var useFormState = (action, initialData = {}) => {
|
|
|
6666
6779
|
};
|
|
6667
6780
|
|
|
6668
6781
|
// src/components/Form/FormErrorSummary.tsx
|
|
6669
|
-
import { useContext as useContext2, useRef as
|
|
6782
|
+
import { useContext as useContext2, useRef as useRef4 } from "react";
|
|
6670
6783
|
import { isArray, isNotUndefined as isNotUndefined5 } from "@wistia/type-guards";
|
|
6671
|
-
import { jsx as
|
|
6784
|
+
import { jsx as jsx179, jsxs as jsxs10 } from "react/jsx-runtime";
|
|
6672
6785
|
var ErrorItem = ({ name, error, formId }) => {
|
|
6673
|
-
return /* @__PURE__ */
|
|
6786
|
+
return /* @__PURE__ */ jsx179("li", { children: /* @__PURE__ */ jsx179(Link, { href: `${formId}-${name}`, children: error }) }, name);
|
|
6674
6787
|
};
|
|
6675
6788
|
var FormErrorSummary = ({ description }) => {
|
|
6676
|
-
const ref =
|
|
6789
|
+
const ref = useRef4(null);
|
|
6677
6790
|
const { formId, errors, hasSubmitted } = useContext2(FormContext);
|
|
6678
6791
|
const isValid = Object.keys(errors).length === 0;
|
|
6679
6792
|
if (isValid || !hasSubmitted) {
|
|
6680
6793
|
return null;
|
|
6681
6794
|
}
|
|
6682
|
-
return /* @__PURE__ */
|
|
6683
|
-
/* @__PURE__ */
|
|
6684
|
-
/* @__PURE__ */
|
|
6685
|
-
([name, error]) => isArray(error) ? error.map((err) => /* @__PURE__ */
|
|
6795
|
+
return /* @__PURE__ */ jsxs10("div", { ref, children: [
|
|
6796
|
+
/* @__PURE__ */ jsx179("p", { children: description }),
|
|
6797
|
+
/* @__PURE__ */ jsx179("ul", { children: Object.entries(errors).filter(([, error]) => isNotUndefined5(error)).map(
|
|
6798
|
+
([name, error]) => isArray(error) ? error.map((err) => /* @__PURE__ */ jsx179(
|
|
6686
6799
|
ErrorItem,
|
|
6687
6800
|
{
|
|
6688
6801
|
error: err,
|
|
@@ -6690,7 +6803,7 @@ var FormErrorSummary = ({ description }) => {
|
|
|
6690
6803
|
name
|
|
6691
6804
|
},
|
|
6692
6805
|
err
|
|
6693
|
-
)) : /* @__PURE__ */
|
|
6806
|
+
)) : /* @__PURE__ */ jsx179(
|
|
6694
6807
|
ErrorItem,
|
|
6695
6808
|
{
|
|
6696
6809
|
error: error ?? "",
|
|
@@ -6705,13 +6818,13 @@ var FormErrorSummary = ({ description }) => {
|
|
|
6705
6818
|
|
|
6706
6819
|
// src/components/FormField/FormField.tsx
|
|
6707
6820
|
import { Children as Children2, cloneElement as cloneElement3, useContext as useContext3 } from "react";
|
|
6708
|
-
import
|
|
6821
|
+
import styled23 from "styled-components";
|
|
6709
6822
|
import { isArray as isArray2, isNotNil as isNotNil7, isNotUndefined as isNotUndefined6, isUndefined as isUndefined4 } from "@wistia/type-guards";
|
|
6710
6823
|
|
|
6711
6824
|
// src/components/Text/Text.tsx
|
|
6712
6825
|
import { forwardRef as forwardRef9 } from "react";
|
|
6713
|
-
import
|
|
6714
|
-
import { jsx as
|
|
6826
|
+
import styled21, { css as css18 } from "styled-components";
|
|
6827
|
+
import { jsx as jsx180 } from "react/jsx-runtime";
|
|
6715
6828
|
var bodyBoldStyles = css18`
|
|
6716
6829
|
> strong,
|
|
6717
6830
|
b {
|
|
@@ -6810,7 +6923,7 @@ var variantStyleMap2 = {
|
|
|
6810
6923
|
label3: label3TextStyle,
|
|
6811
6924
|
label4: label4TextStyle
|
|
6812
6925
|
};
|
|
6813
|
-
var StyledText =
|
|
6926
|
+
var StyledText = styled21.div`
|
|
6814
6927
|
${({ $colorScheme }) => getColorScheme($colorScheme)};
|
|
6815
6928
|
--text-color: ${({ $prominence, $disabled }) => {
|
|
6816
6929
|
if ($disabled) {
|
|
@@ -6864,7 +6977,7 @@ var TextComponent = forwardRef9(
|
|
|
6864
6977
|
renderAs,
|
|
6865
6978
|
...otherProps
|
|
6866
6979
|
}, ref) => {
|
|
6867
|
-
return /* @__PURE__ */
|
|
6980
|
+
return /* @__PURE__ */ jsx180(
|
|
6868
6981
|
StyledText,
|
|
6869
6982
|
{
|
|
6870
6983
|
ref,
|
|
@@ -6886,28 +6999,28 @@ TextComponent.displayName = "Text";
|
|
|
6886
6999
|
var Text = makePolymorphic(TextComponent);
|
|
6887
7000
|
|
|
6888
7001
|
// src/components/FormGroup/CheckboxGroup.tsx
|
|
6889
|
-
import { createContext as createContext3, useMemo as
|
|
7002
|
+
import { createContext as createContext3, useMemo as useMemo6 } from "react";
|
|
6890
7003
|
|
|
6891
7004
|
// src/components/FormGroup/FormGroup.tsx
|
|
6892
|
-
import
|
|
6893
|
-
import { useRef as
|
|
6894
|
-
import { jsx as
|
|
6895
|
-
var StyledFieldset =
|
|
7005
|
+
import styled22 from "styled-components";
|
|
7006
|
+
import { useRef as useRef5 } from "react";
|
|
7007
|
+
import { jsx as jsx181, jsxs as jsxs11 } from "react/jsx-runtime";
|
|
7008
|
+
var StyledFieldset = styled22.fieldset`
|
|
6896
7009
|
border: 0;
|
|
6897
7010
|
`;
|
|
6898
|
-
var StyledLegend =
|
|
7011
|
+
var StyledLegend = styled22.legend`
|
|
6899
7012
|
margin-bottom: var(--space-01);
|
|
6900
7013
|
`;
|
|
6901
7014
|
var FormGroup = ({ children, label, ...props }) => {
|
|
6902
|
-
const ref =
|
|
6903
|
-
return /* @__PURE__ */
|
|
7015
|
+
const ref = useRef5();
|
|
7016
|
+
return /* @__PURE__ */ jsxs11(
|
|
6904
7017
|
Stack,
|
|
6905
7018
|
{
|
|
6906
7019
|
...props,
|
|
6907
7020
|
ref,
|
|
6908
7021
|
renderAs: StyledFieldset,
|
|
6909
7022
|
children: [
|
|
6910
|
-
/* @__PURE__ */
|
|
7023
|
+
/* @__PURE__ */ jsx181(
|
|
6911
7024
|
Heading,
|
|
6912
7025
|
{
|
|
6913
7026
|
renderAs: StyledLegend,
|
|
@@ -6923,7 +7036,7 @@ var FormGroup = ({ children, label, ...props }) => {
|
|
|
6923
7036
|
FormGroup.displayName = "FormGroup";
|
|
6924
7037
|
|
|
6925
7038
|
// src/components/FormGroup/CheckboxGroup.tsx
|
|
6926
|
-
import { jsx as
|
|
7039
|
+
import { jsx as jsx182 } from "react/jsx-runtime";
|
|
6927
7040
|
var CheckboxGroupContext = createContext3(null);
|
|
6928
7041
|
var CheckboxGroup = ({
|
|
6929
7042
|
children,
|
|
@@ -6932,19 +7045,19 @@ var CheckboxGroup = ({
|
|
|
6932
7045
|
value,
|
|
6933
7046
|
...props
|
|
6934
7047
|
}) => {
|
|
6935
|
-
const context =
|
|
7048
|
+
const context = useMemo6(() => {
|
|
6936
7049
|
return {
|
|
6937
7050
|
name,
|
|
6938
7051
|
onChange
|
|
6939
7052
|
};
|
|
6940
7053
|
}, [name, onChange]);
|
|
6941
|
-
return /* @__PURE__ */
|
|
7054
|
+
return /* @__PURE__ */ jsx182(CheckboxGroupContext.Provider, { value: context, children: /* @__PURE__ */ jsx182(FormGroup, { ...props, children }) });
|
|
6942
7055
|
};
|
|
6943
7056
|
CheckboxGroup.displayName = "CheckboxGroup";
|
|
6944
7057
|
|
|
6945
7058
|
// src/components/FormField/FormField.tsx
|
|
6946
|
-
import { jsx as
|
|
6947
|
-
var StyledFormField =
|
|
7059
|
+
import { jsx as jsx183, jsxs as jsxs12 } from "react/jsx-runtime";
|
|
7060
|
+
var StyledFormField = styled23.div`
|
|
6948
7061
|
--form-field-spacing: var(--wui-space-01);
|
|
6949
7062
|
--form-field-error-color: var(--wui-color-text-secondary-error);
|
|
6950
7063
|
|
|
@@ -6952,7 +7065,7 @@ var StyledFormField = styled22.div`
|
|
|
6952
7065
|
flex-direction: column;
|
|
6953
7066
|
gap: var(--form-field-spacing);
|
|
6954
7067
|
`;
|
|
6955
|
-
var StyledErrorList =
|
|
7068
|
+
var StyledErrorList = styled23.ul`
|
|
6956
7069
|
margin: 0;
|
|
6957
7070
|
padding: 0;
|
|
6958
7071
|
padding-left: var(--wui-space-04);
|
|
@@ -6962,7 +7075,7 @@ var StyledErrorList = styled22.ul`
|
|
|
6962
7075
|
`;
|
|
6963
7076
|
var ErrorMessages = ({ errors, id }) => {
|
|
6964
7077
|
const isMultipleErrors = isArray2(errors);
|
|
6965
|
-
return isMultipleErrors ? /* @__PURE__ */
|
|
7078
|
+
return isMultipleErrors ? /* @__PURE__ */ jsx183(StyledErrorList, { children: errors.map((error, index) => /* @__PURE__ */ jsx183(
|
|
6966
7079
|
Text,
|
|
6967
7080
|
{
|
|
6968
7081
|
colorScheme: "error",
|
|
@@ -6972,7 +7085,7 @@ var ErrorMessages = ({ errors, id }) => {
|
|
|
6972
7085
|
children: error
|
|
6973
7086
|
},
|
|
6974
7087
|
`${id}-${index}`
|
|
6975
|
-
)) }) : /* @__PURE__ */
|
|
7088
|
+
)) }) : /* @__PURE__ */ jsx183(
|
|
6976
7089
|
Text,
|
|
6977
7090
|
{
|
|
6978
7091
|
colorScheme: "error",
|
|
@@ -7029,10 +7142,10 @@ var FormField = ({
|
|
|
7029
7142
|
};
|
|
7030
7143
|
}
|
|
7031
7144
|
Children2.only(children);
|
|
7032
|
-
return /* @__PURE__ */
|
|
7033
|
-
!isInlineLabel && /* @__PURE__ */
|
|
7145
|
+
return /* @__PURE__ */ jsxs12(StyledFormField, { ...props, children: [
|
|
7146
|
+
!isInlineLabel && /* @__PURE__ */ jsx183(Label, { htmlFor: id, children: label }),
|
|
7034
7147
|
cloneElement3(children, childProps),
|
|
7035
|
-
isNotNil7(computedError) ? /* @__PURE__ */
|
|
7148
|
+
isNotNil7(computedError) ? /* @__PURE__ */ jsx183(
|
|
7036
7149
|
ErrorMessages,
|
|
7037
7150
|
{
|
|
7038
7151
|
errors: computedError,
|
|
@@ -7044,8 +7157,8 @@ var FormField = ({
|
|
|
7044
7157
|
FormField.displayName = "FormField";
|
|
7045
7158
|
|
|
7046
7159
|
// src/components/FormGroup/RadioGroup.tsx
|
|
7047
|
-
import { createContext as createContext4, useMemo as
|
|
7048
|
-
import { jsx as
|
|
7160
|
+
import { createContext as createContext4, useMemo as useMemo7 } from "react";
|
|
7161
|
+
import { jsx as jsx184 } from "react/jsx-runtime";
|
|
7049
7162
|
var RadioGroupContext = createContext4(null);
|
|
7050
7163
|
var RadioGroup = ({
|
|
7051
7164
|
children,
|
|
@@ -7054,21 +7167,21 @@ var RadioGroup = ({
|
|
|
7054
7167
|
value,
|
|
7055
7168
|
...props
|
|
7056
7169
|
}) => {
|
|
7057
|
-
const context =
|
|
7170
|
+
const context = useMemo7(() => {
|
|
7058
7171
|
return {
|
|
7059
7172
|
name,
|
|
7060
7173
|
onChange
|
|
7061
7174
|
};
|
|
7062
7175
|
}, [name, onChange]);
|
|
7063
|
-
return /* @__PURE__ */
|
|
7176
|
+
return /* @__PURE__ */ jsx184(RadioGroupContext.Provider, { value: context, children: /* @__PURE__ */ jsx184(FormGroup, { ...props, children }) });
|
|
7064
7177
|
};
|
|
7065
7178
|
RadioGroup.displayName = "RadioGroup";
|
|
7066
7179
|
|
|
7067
7180
|
// src/components/IconButton/IconButton.tsx
|
|
7068
7181
|
import { Children as Children3, cloneElement as cloneElement4, forwardRef as forwardRef10 } from "react";
|
|
7069
|
-
import
|
|
7070
|
-
import { jsx as
|
|
7071
|
-
var StyledButton2 =
|
|
7182
|
+
import styled24 from "styled-components";
|
|
7183
|
+
import { jsx as jsx185 } from "react/jsx-runtime";
|
|
7184
|
+
var StyledButton2 = styled24(Button)`
|
|
7072
7185
|
--icon-button-size-sm: 24px;
|
|
7073
7186
|
--icon-button-size-md: 32px;
|
|
7074
7187
|
--icon-button-size-lg: 40px;
|
|
@@ -7085,7 +7198,7 @@ var StyledButton2 = styled23(Button)`
|
|
|
7085
7198
|
var IconButton = forwardRef10(
|
|
7086
7199
|
({ children, label, size = "md", ...props }, ref) => {
|
|
7087
7200
|
const responsiveSize = useResponsiveProp(size);
|
|
7088
|
-
return /* @__PURE__ */
|
|
7201
|
+
return /* @__PURE__ */ jsx185(
|
|
7089
7202
|
StyledButton2,
|
|
7090
7203
|
{
|
|
7091
7204
|
...props,
|
|
@@ -7103,10 +7216,10 @@ var IconButton = forwardRef10(
|
|
|
7103
7216
|
IconButton.displayName = "IconButton";
|
|
7104
7217
|
|
|
7105
7218
|
// src/components/Input/Input.tsx
|
|
7106
|
-
import { forwardRef as forwardRef11, cloneElement as cloneElement5, useRef as
|
|
7107
|
-
import
|
|
7219
|
+
import { forwardRef as forwardRef11, cloneElement as cloneElement5, useRef as useRef6 } from "react";
|
|
7220
|
+
import styled25, { css as css19 } from "styled-components";
|
|
7108
7221
|
import { isNil as isNil10, isNotNil as isNotNil8 } from "@wistia/type-guards";
|
|
7109
|
-
import { jsx as
|
|
7222
|
+
import { jsx as jsx186, jsxs as jsxs13 } from "react/jsx-runtime";
|
|
7110
7223
|
var inputStyles = css19`
|
|
7111
7224
|
--wui-input-color-bg: var(--wui-color-bg-surface);
|
|
7112
7225
|
--wui-input-color-bg-disabled: var(--wui-color-bg-surface-disabled);
|
|
@@ -7148,7 +7261,7 @@ var inputStyles = css19`
|
|
|
7148
7261
|
}
|
|
7149
7262
|
}
|
|
7150
7263
|
`;
|
|
7151
|
-
var StyledInputContainer =
|
|
7264
|
+
var StyledInputContainer = styled25.div`
|
|
7152
7265
|
display: inline-flex;
|
|
7153
7266
|
position: relative;
|
|
7154
7267
|
${inputStyles};
|
|
@@ -7205,11 +7318,11 @@ var Input = forwardRef11(
|
|
|
7205
7318
|
rightIcon,
|
|
7206
7319
|
...props
|
|
7207
7320
|
}, externalRef) => {
|
|
7208
|
-
const internalRef =
|
|
7321
|
+
const internalRef = useRef6();
|
|
7209
7322
|
const ref = isValidRef(externalRef) ? externalRef : internalRef;
|
|
7210
7323
|
let leftIconToDisplay = leftIcon;
|
|
7211
7324
|
if (isNil10(leftIcon) && type === "search") {
|
|
7212
|
-
leftIconToDisplay = /* @__PURE__ */
|
|
7325
|
+
leftIconToDisplay = /* @__PURE__ */ jsx186(Icon, { type: "search" });
|
|
7213
7326
|
}
|
|
7214
7327
|
if (isNotNil8(leftIconToDisplay)) {
|
|
7215
7328
|
leftIconToDisplay = cloneElement5(leftIconToDisplay, {
|
|
@@ -7234,21 +7347,21 @@ var Input = forwardRef11(
|
|
|
7234
7347
|
});
|
|
7235
7348
|
}
|
|
7236
7349
|
};
|
|
7237
|
-
return /* @__PURE__ */
|
|
7350
|
+
return /* @__PURE__ */ jsxs13(
|
|
7238
7351
|
StyledInputContainer,
|
|
7239
7352
|
{
|
|
7240
7353
|
$fullWidth: fullWidth,
|
|
7241
7354
|
$monospace: monospace,
|
|
7242
7355
|
children: [
|
|
7243
7356
|
leftIconToDisplay ?? null,
|
|
7244
|
-
type === "multiline" ? /* @__PURE__ */
|
|
7357
|
+
type === "multiline" ? /* @__PURE__ */ jsx186(
|
|
7245
7358
|
"textarea",
|
|
7246
7359
|
{
|
|
7247
7360
|
...props,
|
|
7248
7361
|
ref,
|
|
7249
7362
|
onFocus: handleFocus
|
|
7250
7363
|
}
|
|
7251
|
-
) : /* @__PURE__ */
|
|
7364
|
+
) : /* @__PURE__ */ jsx186(
|
|
7252
7365
|
"input",
|
|
7253
7366
|
{
|
|
7254
7367
|
...props,
|
|
@@ -7266,7 +7379,7 @@ var Input = forwardRef11(
|
|
|
7266
7379
|
Input.displayName = "Input";
|
|
7267
7380
|
|
|
7268
7381
|
// src/components/Menu/Menu.tsx
|
|
7269
|
-
import
|
|
7382
|
+
import styled26, { css as css20, keyframes } from "styled-components";
|
|
7270
7383
|
import {
|
|
7271
7384
|
DropdownMenu,
|
|
7272
7385
|
DropdownMenuTrigger,
|
|
@@ -7274,7 +7387,7 @@ import {
|
|
|
7274
7387
|
DropdownMenuContent
|
|
7275
7388
|
} from "@radix-ui/react-dropdown-menu";
|
|
7276
7389
|
import { isNotNil as isNotNil9, isNotUndefined as isNotUndefined7 } from "@wistia/type-guards";
|
|
7277
|
-
import { jsx as
|
|
7390
|
+
import { jsx as jsx187, jsxs as jsxs14 } from "react/jsx-runtime";
|
|
7278
7391
|
var open = keyframes`
|
|
7279
7392
|
from {
|
|
7280
7393
|
opacity: 0;
|
|
@@ -7356,7 +7469,7 @@ var compactMenuItemCss = css20`
|
|
|
7356
7469
|
--menu-label-line-height: var(--wui-typography-label-4-line-height);
|
|
7357
7470
|
--menu-divider-margin: var(--wui-space-01);
|
|
7358
7471
|
`;
|
|
7359
|
-
var MenuContent =
|
|
7472
|
+
var MenuContent = styled26(DropdownMenuContent)`
|
|
7360
7473
|
${menuContentCss}
|
|
7361
7474
|
${({ $compact }) => $compact ? compactMenuItemCss : menuItemCss}
|
|
7362
7475
|
`;
|
|
@@ -7382,24 +7495,24 @@ var Menu = ({
|
|
|
7382
7495
|
onOpenChange: () => null
|
|
7383
7496
|
};
|
|
7384
7497
|
}
|
|
7385
|
-
return /* @__PURE__ */
|
|
7498
|
+
return /* @__PURE__ */ jsxs14(
|
|
7386
7499
|
DropdownMenu,
|
|
7387
7500
|
{
|
|
7388
7501
|
modal: false,
|
|
7389
7502
|
...controlProps,
|
|
7390
7503
|
children: [
|
|
7391
|
-
/* @__PURE__ */
|
|
7504
|
+
/* @__PURE__ */ jsx187(DropdownMenuTrigger, { asChild: true, children: isNotUndefined7(trigger) ? trigger : /* @__PURE__ */ jsx187(
|
|
7392
7505
|
Button,
|
|
7393
7506
|
{
|
|
7394
7507
|
"aria-expanded": isOpen,
|
|
7395
7508
|
disabled,
|
|
7396
7509
|
forceState: isOpen ? "active" : void 0,
|
|
7397
|
-
rightIcon: /* @__PURE__ */
|
|
7510
|
+
rightIcon: /* @__PURE__ */ jsx187(Icon, { type: "caret-down" }),
|
|
7398
7511
|
...triggerProps,
|
|
7399
7512
|
children: label
|
|
7400
7513
|
}
|
|
7401
7514
|
) }),
|
|
7402
|
-
/* @__PURE__ */
|
|
7515
|
+
/* @__PURE__ */ jsx187(DropdownMenuPortal, { children: /* @__PURE__ */ jsx187(
|
|
7403
7516
|
MenuContent,
|
|
7404
7517
|
{
|
|
7405
7518
|
...props,
|
|
@@ -7419,19 +7532,19 @@ var Menu = ({
|
|
|
7419
7532
|
Menu.displayName = "Menu";
|
|
7420
7533
|
|
|
7421
7534
|
// src/components/Menu/MenuLabel.tsx
|
|
7422
|
-
import
|
|
7535
|
+
import styled27 from "styled-components";
|
|
7423
7536
|
import { DropdownMenuLabel } from "@radix-ui/react-dropdown-menu";
|
|
7424
|
-
import { jsx as
|
|
7425
|
-
var StyledMenuLabel =
|
|
7537
|
+
import { jsx as jsx188 } from "react/jsx-runtime";
|
|
7538
|
+
var StyledMenuLabel = styled27(DropdownMenuLabel)`
|
|
7426
7539
|
padding: var(--wui-space-02);
|
|
7427
7540
|
`;
|
|
7428
7541
|
var MenuLabel = ({ children, ...props }) => {
|
|
7429
|
-
return /* @__PURE__ */
|
|
7542
|
+
return /* @__PURE__ */ jsx188(
|
|
7430
7543
|
StyledMenuLabel,
|
|
7431
7544
|
{
|
|
7432
7545
|
asChild: true,
|
|
7433
7546
|
...props,
|
|
7434
|
-
children: /* @__PURE__ */
|
|
7547
|
+
children: /* @__PURE__ */ jsx188(
|
|
7435
7548
|
Heading,
|
|
7436
7549
|
{
|
|
7437
7550
|
renderAs: "span",
|
|
@@ -7447,7 +7560,7 @@ MenuLabel.displayName = "MenuLabel";
|
|
|
7447
7560
|
|
|
7448
7561
|
// src/components/Menu/SubMenu.tsx
|
|
7449
7562
|
import { useState as useState7 } from "react";
|
|
7450
|
-
import
|
|
7563
|
+
import styled30 from "styled-components";
|
|
7451
7564
|
import {
|
|
7452
7565
|
DropdownMenuPortal as DropdownMenuPortal2,
|
|
7453
7566
|
DropdownMenuSub,
|
|
@@ -7460,10 +7573,10 @@ import { isNotNil as isNotNil11 } from "@wistia/type-guards";
|
|
|
7460
7573
|
|
|
7461
7574
|
// src/components/Menu/MenuItemButton.tsx
|
|
7462
7575
|
import { forwardRef as forwardRef12 } from "react";
|
|
7463
|
-
import
|
|
7576
|
+
import styled28 from "styled-components";
|
|
7464
7577
|
import { isNotNil as isNotNil10, isNotUndefined as isNotUndefined8 } from "@wistia/type-guards";
|
|
7465
|
-
import { jsx as
|
|
7466
|
-
var StyledButton3 =
|
|
7578
|
+
import { jsx as jsx189, jsxs as jsxs15 } from "react/jsx-runtime";
|
|
7579
|
+
var StyledButton3 = styled28(Button)`
|
|
7467
7580
|
${({ colorScheme }) => getColorScheme(colorScheme)};
|
|
7468
7581
|
|
|
7469
7582
|
display: flex;
|
|
@@ -7501,7 +7614,7 @@ var StyledButton3 = styled27(Button)`
|
|
|
7501
7614
|
padding-left: var(--wui-space-04);
|
|
7502
7615
|
}
|
|
7503
7616
|
`;
|
|
7504
|
-
var StyledLeftIconContainer =
|
|
7617
|
+
var StyledLeftIconContainer = styled28.div`
|
|
7505
7618
|
height: var(--menu-item-left-icon-size);
|
|
7506
7619
|
width: var(--menu-item-left-icon-size);
|
|
7507
7620
|
|
|
@@ -7510,7 +7623,7 @@ var StyledLeftIconContainer = styled27.div`
|
|
|
7510
7623
|
width: var(--menu-item-left-icon-size);
|
|
7511
7624
|
}
|
|
7512
7625
|
`;
|
|
7513
|
-
var StyledRightIconContainer =
|
|
7626
|
+
var StyledRightIconContainer = styled28.div`
|
|
7514
7627
|
height: var(--menu-item-right-icon-size);
|
|
7515
7628
|
width: var(--menu-item-right-icon-size);
|
|
7516
7629
|
|
|
@@ -7519,13 +7632,13 @@ var StyledRightIconContainer = styled27.div`
|
|
|
7519
7632
|
width: var(--menu-item-right-icon-size);
|
|
7520
7633
|
}
|
|
7521
7634
|
`;
|
|
7522
|
-
var StyledLabelAndDescriptionContainer =
|
|
7635
|
+
var StyledLabelAndDescriptionContainer = styled28.div`
|
|
7523
7636
|
display: flex;
|
|
7524
7637
|
flex-direction: column;
|
|
7525
7638
|
gap: var(--menu-label-description-gap);
|
|
7526
7639
|
flex-basis: 100%;
|
|
7527
7640
|
`;
|
|
7528
|
-
var StyledBadgeContainer =
|
|
7641
|
+
var StyledBadgeContainer = styled28.div`
|
|
7529
7642
|
align-self: start;
|
|
7530
7643
|
justify-self: end;
|
|
7531
7644
|
font-size: var(--wui-typography-label-4-size);
|
|
@@ -7540,7 +7653,7 @@ var MenuItemButton = forwardRef12(({ children, appearance, command, icon, ...pro
|
|
|
7540
7653
|
colorScheme = "error";
|
|
7541
7654
|
}
|
|
7542
7655
|
if (appearance === "gated") {
|
|
7543
|
-
badge = /* @__PURE__ */
|
|
7656
|
+
badge = /* @__PURE__ */ jsx189(
|
|
7544
7657
|
Icon,
|
|
7545
7658
|
{
|
|
7546
7659
|
colorScheme: "purple",
|
|
@@ -7552,7 +7665,7 @@ var MenuItemButton = forwardRef12(({ children, appearance, command, icon, ...pro
|
|
|
7552
7665
|
}
|
|
7553
7666
|
);
|
|
7554
7667
|
}
|
|
7555
|
-
return /* @__PURE__ */
|
|
7668
|
+
return /* @__PURE__ */ jsxs15(
|
|
7556
7669
|
StyledButton3,
|
|
7557
7670
|
{
|
|
7558
7671
|
...props,
|
|
@@ -7562,10 +7675,10 @@ var MenuItemButton = forwardRef12(({ children, appearance, command, icon, ...pro
|
|
|
7562
7675
|
fullWidth: true,
|
|
7563
7676
|
unstyled: true,
|
|
7564
7677
|
children: [
|
|
7565
|
-
props.leftIcon ? /* @__PURE__ */
|
|
7566
|
-
/* @__PURE__ */
|
|
7567
|
-
isNotNil10(badge) || isNotNil10(command) ? /* @__PURE__ */
|
|
7568
|
-
props.rightIcon ? /* @__PURE__ */
|
|
7678
|
+
props.leftIcon ? /* @__PURE__ */ jsx189(StyledLeftIconContainer, { children: props.leftIcon }) : null,
|
|
7679
|
+
/* @__PURE__ */ jsx189(StyledLabelAndDescriptionContainer, { children }),
|
|
7680
|
+
isNotNil10(badge) || isNotNil10(command) ? /* @__PURE__ */ jsx189(StyledBadgeContainer, { children: badge ?? command }) : null,
|
|
7681
|
+
props.rightIcon ? /* @__PURE__ */ jsx189(StyledRightIconContainer, { children: props.rightIcon }) : null
|
|
7569
7682
|
]
|
|
7570
7683
|
}
|
|
7571
7684
|
);
|
|
@@ -7573,23 +7686,23 @@ var MenuItemButton = forwardRef12(({ children, appearance, command, icon, ...pro
|
|
|
7573
7686
|
MenuItemButton.displayName = "MenuItemButton";
|
|
7574
7687
|
|
|
7575
7688
|
// src/components/Menu/MenuItemLabelDescription.tsx
|
|
7576
|
-
import
|
|
7577
|
-
import { jsx as
|
|
7578
|
-
var StyledMenuItemLabel =
|
|
7579
|
-
var StyledMenuItemDescription =
|
|
7689
|
+
import styled29 from "styled-components";
|
|
7690
|
+
import { jsx as jsx190 } from "react/jsx-runtime";
|
|
7691
|
+
var StyledMenuItemLabel = styled29.span``;
|
|
7692
|
+
var StyledMenuItemDescription = styled29(Text).attrs({
|
|
7580
7693
|
variant: "body4",
|
|
7581
7694
|
prominence: "secondary"
|
|
7582
7695
|
})``;
|
|
7583
7696
|
var MenuItemLabel = ({ children }) => {
|
|
7584
|
-
return /* @__PURE__ */
|
|
7697
|
+
return /* @__PURE__ */ jsx190(StyledMenuItemLabel, { children });
|
|
7585
7698
|
};
|
|
7586
7699
|
var MenuItemDescription = ({ children }) => {
|
|
7587
|
-
return /* @__PURE__ */
|
|
7700
|
+
return /* @__PURE__ */ jsx190(StyledMenuItemDescription, { children });
|
|
7588
7701
|
};
|
|
7589
7702
|
|
|
7590
7703
|
// src/components/Menu/SubMenu.tsx
|
|
7591
|
-
import { jsx as
|
|
7592
|
-
var SubMenuContent =
|
|
7704
|
+
import { jsx as jsx191, jsxs as jsxs16 } from "react/jsx-runtime";
|
|
7705
|
+
var SubMenuContent = styled30(DropdownMenuSubContent)`
|
|
7593
7706
|
${menuContentCss}
|
|
7594
7707
|
width: 298px;
|
|
7595
7708
|
|
|
@@ -7597,10 +7710,10 @@ var SubMenuContent = styled29(DropdownMenuSubContent)`
|
|
|
7597
7710
|
transform: translateX(-100%) !important;
|
|
7598
7711
|
}
|
|
7599
7712
|
`;
|
|
7600
|
-
var StyledMobileSubMenuItems =
|
|
7713
|
+
var StyledMobileSubMenuItems = styled30.div`
|
|
7601
7714
|
margin-left: var(--wui-space-04);
|
|
7602
7715
|
`;
|
|
7603
|
-
var StyledSubTrigger =
|
|
7716
|
+
var StyledSubTrigger = styled30(DropdownMenuSubTrigger)`
|
|
7604
7717
|
outline: none;
|
|
7605
7718
|
|
|
7606
7719
|
&[data-state='open'],
|
|
@@ -7611,11 +7724,11 @@ var StyledSubTrigger = styled29(DropdownMenuSubTrigger)`
|
|
|
7611
7724
|
var SubMenuTrigger = (props) => {
|
|
7612
7725
|
const { isSmAndUp } = useMq();
|
|
7613
7726
|
const Trigger2 = isSmAndUp ? StyledSubTrigger : DropdownMenuItem;
|
|
7614
|
-
return /* @__PURE__ */
|
|
7727
|
+
return /* @__PURE__ */ jsx191(Trigger2, { asChild: true, children: /* @__PURE__ */ jsx191(
|
|
7615
7728
|
MenuItemButton,
|
|
7616
7729
|
{
|
|
7617
7730
|
...props,
|
|
7618
|
-
rightIcon: /* @__PURE__ */
|
|
7731
|
+
rightIcon: /* @__PURE__ */ jsx191(Icon, { type: "caret-right" })
|
|
7619
7732
|
}
|
|
7620
7733
|
) });
|
|
7621
7734
|
};
|
|
@@ -7628,14 +7741,14 @@ var SubMenu = ({
|
|
|
7628
7741
|
}) => {
|
|
7629
7742
|
const { isSmAndUp } = useMq();
|
|
7630
7743
|
const [isExpanded, setIsExpanded] = useState7(false);
|
|
7631
|
-
return isSmAndUp ? /* @__PURE__ */
|
|
7632
|
-
/* @__PURE__ */
|
|
7633
|
-
/* @__PURE__ */
|
|
7634
|
-
isNotNil11(description) ? /* @__PURE__ */
|
|
7744
|
+
return isSmAndUp ? /* @__PURE__ */ jsxs16(DropdownMenuSub, { onOpenChange, children: [
|
|
7745
|
+
/* @__PURE__ */ jsxs16(SubMenuTrigger, { ...props, children: [
|
|
7746
|
+
/* @__PURE__ */ jsx191(MenuItemLabel, { children: label }),
|
|
7747
|
+
isNotNil11(description) ? /* @__PURE__ */ jsx191(MenuItemDescription, { children: description }) : null
|
|
7635
7748
|
] }),
|
|
7636
|
-
/* @__PURE__ */
|
|
7637
|
-
] }) : /* @__PURE__ */
|
|
7638
|
-
/* @__PURE__ */
|
|
7749
|
+
/* @__PURE__ */ jsx191(DropdownMenuPortal2, { children: /* @__PURE__ */ jsx191(SubMenuContent, { children }) })
|
|
7750
|
+
] }) : /* @__PURE__ */ jsxs16(DropdownMenuGroup, { children: [
|
|
7751
|
+
/* @__PURE__ */ jsxs16(
|
|
7639
7752
|
SubMenuTrigger,
|
|
7640
7753
|
{
|
|
7641
7754
|
...props,
|
|
@@ -7644,12 +7757,12 @@ var SubMenu = ({
|
|
|
7644
7757
|
setIsExpanded((prev) => !prev);
|
|
7645
7758
|
},
|
|
7646
7759
|
children: [
|
|
7647
|
-
/* @__PURE__ */
|
|
7648
|
-
/* @__PURE__ */
|
|
7760
|
+
/* @__PURE__ */ jsx191(MenuItemLabel, { children: label }),
|
|
7761
|
+
/* @__PURE__ */ jsx191(MenuItemDescription, { children: description })
|
|
7649
7762
|
]
|
|
7650
7763
|
}
|
|
7651
7764
|
),
|
|
7652
|
-
/* @__PURE__ */
|
|
7765
|
+
/* @__PURE__ */ jsx191(StyledMobileSubMenuItems, { children: isExpanded ? children : null })
|
|
7653
7766
|
] });
|
|
7654
7767
|
};
|
|
7655
7768
|
SubMenu.displayName = "SubMenu";
|
|
@@ -7657,15 +7770,15 @@ SubMenu.displayName = "SubMenu";
|
|
|
7657
7770
|
// src/components/Menu/MenuItem.tsx
|
|
7658
7771
|
import { forwardRef as forwardRef13 } from "react";
|
|
7659
7772
|
import { DropdownMenuItem as DropdownMenuItem2 } from "@radix-ui/react-dropdown-menu";
|
|
7660
|
-
import { jsx as
|
|
7773
|
+
import { jsx as jsx192 } from "react/jsx-runtime";
|
|
7661
7774
|
var MenuItem = forwardRef13(
|
|
7662
7775
|
({ onSelect = () => null, ...props }, ref) => {
|
|
7663
|
-
return /* @__PURE__ */
|
|
7776
|
+
return /* @__PURE__ */ jsx192(
|
|
7664
7777
|
DropdownMenuItem2,
|
|
7665
7778
|
{
|
|
7666
7779
|
asChild: true,
|
|
7667
7780
|
onSelect,
|
|
7668
|
-
children: /* @__PURE__ */
|
|
7781
|
+
children: /* @__PURE__ */ jsx192(
|
|
7669
7782
|
MenuItemButton,
|
|
7670
7783
|
{
|
|
7671
7784
|
...props,
|
|
@@ -7683,10 +7796,10 @@ MenuItem.displayName = "MenuItem";
|
|
|
7683
7796
|
import {
|
|
7684
7797
|
DropdownMenuRadioGroup
|
|
7685
7798
|
} from "@radix-ui/react-dropdown-menu";
|
|
7686
|
-
import { jsx as
|
|
7799
|
+
import { jsx as jsx193, jsxs as jsxs17 } from "react/jsx-runtime";
|
|
7687
7800
|
var MenuRadioGroup = ({ children, label, ...props }) => {
|
|
7688
|
-
return /* @__PURE__ */
|
|
7689
|
-
/* @__PURE__ */
|
|
7801
|
+
return /* @__PURE__ */ jsxs17(DropdownMenuRadioGroup, { ...props, children: [
|
|
7802
|
+
/* @__PURE__ */ jsx193(MenuLabel, { children: label }),
|
|
7690
7803
|
children
|
|
7691
7804
|
] });
|
|
7692
7805
|
};
|
|
@@ -7697,11 +7810,11 @@ import {
|
|
|
7697
7810
|
DropdownMenuItemIndicator,
|
|
7698
7811
|
DropdownMenuRadioItem
|
|
7699
7812
|
} from "@radix-ui/react-dropdown-menu";
|
|
7700
|
-
import { jsx as
|
|
7813
|
+
import { jsx as jsx194 } from "react/jsx-runtime";
|
|
7701
7814
|
var RadioMenuItem = ({
|
|
7702
7815
|
onSelect,
|
|
7703
7816
|
value,
|
|
7704
|
-
indicator = /* @__PURE__ */
|
|
7817
|
+
indicator = /* @__PURE__ */ jsx194(
|
|
7705
7818
|
Icon,
|
|
7706
7819
|
{
|
|
7707
7820
|
size: "sm",
|
|
@@ -7711,17 +7824,17 @@ var RadioMenuItem = ({
|
|
|
7711
7824
|
...props
|
|
7712
7825
|
}) => {
|
|
7713
7826
|
const extraProps = onSelect ? { onSelect } : {};
|
|
7714
|
-
return /* @__PURE__ */
|
|
7827
|
+
return /* @__PURE__ */ jsx194(
|
|
7715
7828
|
DropdownMenuRadioItem,
|
|
7716
7829
|
{
|
|
7717
7830
|
...extraProps,
|
|
7718
7831
|
asChild: true,
|
|
7719
7832
|
value,
|
|
7720
|
-
children: /* @__PURE__ */
|
|
7833
|
+
children: /* @__PURE__ */ jsx194(
|
|
7721
7834
|
MenuItemButton,
|
|
7722
7835
|
{
|
|
7723
7836
|
...props,
|
|
7724
|
-
rightIcon: /* @__PURE__ */
|
|
7837
|
+
rightIcon: /* @__PURE__ */ jsx194(DropdownMenuItemIndicator, { children: indicator })
|
|
7725
7838
|
}
|
|
7726
7839
|
)
|
|
7727
7840
|
}
|
|
@@ -7733,9 +7846,9 @@ RadioMenuItem.displayName = "RadioMenuItem";
|
|
|
7733
7846
|
import {
|
|
7734
7847
|
DropdownMenuCheckboxItem
|
|
7735
7848
|
} from "@radix-ui/react-dropdown-menu";
|
|
7736
|
-
import { jsx as
|
|
7849
|
+
import { jsx as jsx195, jsxs as jsxs18 } from "react/jsx-runtime";
|
|
7737
7850
|
var CheckboxIndicator2 = ({ checked, ...props }) => {
|
|
7738
|
-
return checked ? /* @__PURE__ */
|
|
7851
|
+
return checked ? /* @__PURE__ */ jsxs18(
|
|
7739
7852
|
"svg",
|
|
7740
7853
|
{
|
|
7741
7854
|
...props,
|
|
@@ -7745,14 +7858,14 @@ var CheckboxIndicator2 = ({ checked, ...props }) => {
|
|
|
7745
7858
|
width: "24",
|
|
7746
7859
|
xmlns: "http://www.w3.org/2000/svg",
|
|
7747
7860
|
children: [
|
|
7748
|
-
/* @__PURE__ */
|
|
7861
|
+
/* @__PURE__ */ jsx195(
|
|
7749
7862
|
"path",
|
|
7750
7863
|
{
|
|
7751
7864
|
d: "m4 8c0-2.20914 1.79086-4 4-4h8c2.2091 0 4 1.79086 4 4v8c0 2.2091-1.7909 4-4 4h-8c-2.20914 0-4-1.7909-4-4z",
|
|
7752
7865
|
fill: "#2949e5"
|
|
7753
7866
|
}
|
|
7754
7867
|
),
|
|
7755
|
-
/* @__PURE__ */
|
|
7868
|
+
/* @__PURE__ */ jsx195(
|
|
7756
7869
|
"path",
|
|
7757
7870
|
{
|
|
7758
7871
|
d: "m10.4728 15.1931-3.09523-3.1131c-.18596-.187-.18596-.4902 0-.6773l.67341-.6773c.18596-.187.48749-.187.67344 0l2.08508 2.0971 4.4661-4.49174c.1859-.18703.4875-.18703.6734 0l.6734.67731c.186.18703.186.49027 0 .67731l-5.4762 5.50772c-.1859.187-.4874.187-.6734 0z",
|
|
@@ -7761,7 +7874,7 @@ var CheckboxIndicator2 = ({ checked, ...props }) => {
|
|
|
7761
7874
|
)
|
|
7762
7875
|
]
|
|
7763
7876
|
}
|
|
7764
|
-
) : /* @__PURE__ */
|
|
7877
|
+
) : /* @__PURE__ */ jsxs18(
|
|
7765
7878
|
"svg",
|
|
7766
7879
|
{
|
|
7767
7880
|
...props,
|
|
@@ -7771,14 +7884,14 @@ var CheckboxIndicator2 = ({ checked, ...props }) => {
|
|
|
7771
7884
|
width: "24",
|
|
7772
7885
|
xmlns: "http://www.w3.org/2000/svg",
|
|
7773
7886
|
children: [
|
|
7774
|
-
/* @__PURE__ */
|
|
7887
|
+
/* @__PURE__ */ jsx195(
|
|
7775
7888
|
"path",
|
|
7776
7889
|
{
|
|
7777
7890
|
d: "m8 4.5h8c1.933 0 3.5 1.567 3.5 3.5v8c0 1.933-1.567 3.5-3.5 3.5h-8c-1.933 0-3.5-1.567-3.5-3.5v-8c0-1.933 1.567-3.5 3.5-3.5z",
|
|
7778
7891
|
fill: "#fcfcfd"
|
|
7779
7892
|
}
|
|
7780
7893
|
),
|
|
7781
|
-
/* @__PURE__ */
|
|
7894
|
+
/* @__PURE__ */ jsx195(
|
|
7782
7895
|
"path",
|
|
7783
7896
|
{
|
|
7784
7897
|
d: "m8 4.5h8c1.933 0 3.5 1.567 3.5 3.5v8c0 1.933-1.567 3.5-3.5 3.5h-8c-1.933 0-3.5-1.567-3.5-3.5v-8c0-1.933 1.567-3.5 3.5-3.5z",
|
|
@@ -7795,18 +7908,18 @@ var CheckboxMenuItem = ({
|
|
|
7795
7908
|
onCheckedChange,
|
|
7796
7909
|
...props
|
|
7797
7910
|
}) => {
|
|
7798
|
-
return /* @__PURE__ */
|
|
7911
|
+
return /* @__PURE__ */ jsx195(
|
|
7799
7912
|
DropdownMenuCheckboxItem,
|
|
7800
7913
|
{
|
|
7801
7914
|
asChild: true,
|
|
7802
7915
|
checked,
|
|
7803
7916
|
onCheckedChange,
|
|
7804
7917
|
onSelect,
|
|
7805
|
-
children: /* @__PURE__ */
|
|
7918
|
+
children: /* @__PURE__ */ jsx195(
|
|
7806
7919
|
MenuItemButton,
|
|
7807
7920
|
{
|
|
7808
7921
|
...props,
|
|
7809
|
-
leftIcon: /* @__PURE__ */
|
|
7922
|
+
leftIcon: /* @__PURE__ */ jsx195(CheckboxIndicator2, { checked })
|
|
7810
7923
|
}
|
|
7811
7924
|
)
|
|
7812
7925
|
}
|
|
@@ -7816,39 +7929,39 @@ CheckboxMenuItem.displayName = "CheckboxMenuItem";
|
|
|
7816
7929
|
|
|
7817
7930
|
// src/components/Modal/Modal.tsx
|
|
7818
7931
|
import { forwardRef as forwardRef16 } from "react";
|
|
7819
|
-
import
|
|
7932
|
+
import styled36 from "styled-components";
|
|
7820
7933
|
import { Root as DialogRoot, Portal as DialogPortal } from "@radix-ui/react-dialog";
|
|
7821
7934
|
import { isNotNil as isNotNil14 } from "@wistia/type-guards";
|
|
7822
7935
|
|
|
7823
7936
|
// src/components/Modal/ModalHeader.tsx
|
|
7824
|
-
import
|
|
7937
|
+
import styled33 from "styled-components";
|
|
7825
7938
|
import { Title as DialogTitle } from "@radix-ui/react-dialog";
|
|
7826
7939
|
|
|
7827
7940
|
// src/components/Modal/ModalCloseButton.tsx
|
|
7828
|
-
import
|
|
7941
|
+
import styled31 from "styled-components";
|
|
7829
7942
|
import { Close as DialogClose } from "@radix-ui/react-dialog";
|
|
7830
|
-
import { jsx as
|
|
7831
|
-
var CloseButton =
|
|
7943
|
+
import { jsx as jsx196 } from "react/jsx-runtime";
|
|
7944
|
+
var CloseButton = styled31(DialogClose)`
|
|
7832
7945
|
align-self: start;
|
|
7833
7946
|
`;
|
|
7834
7947
|
var ModalCloseButton = () => {
|
|
7835
|
-
return /* @__PURE__ */
|
|
7948
|
+
return /* @__PURE__ */ jsx196(CloseButton, { asChild: true, children: /* @__PURE__ */ jsx196(
|
|
7836
7949
|
IconButton,
|
|
7837
7950
|
{
|
|
7838
7951
|
label: "Dismiss modal",
|
|
7839
7952
|
size: "sm",
|
|
7840
7953
|
variant: "ghost",
|
|
7841
|
-
children: /* @__PURE__ */
|
|
7954
|
+
children: /* @__PURE__ */ jsx196(Icon, { type: "close" })
|
|
7842
7955
|
}
|
|
7843
7956
|
) });
|
|
7844
7957
|
};
|
|
7845
7958
|
|
|
7846
7959
|
// src/components/ScreenReaderOnly/ScreenReaderOnly.tsx
|
|
7847
|
-
import
|
|
7960
|
+
import styled32 from "styled-components";
|
|
7848
7961
|
import { isNotNil as isNotNil12 } from "@wistia/type-guards";
|
|
7849
|
-
import { jsx as
|
|
7850
|
-
var VisuallyHidden =
|
|
7851
|
-
var VisuallyHiddenButFocusable =
|
|
7962
|
+
import { jsx as jsx197 } from "react/jsx-runtime";
|
|
7963
|
+
var VisuallyHidden = styled32.div({ ...visuallyHiddenStyle });
|
|
7964
|
+
var VisuallyHiddenButFocusable = styled32.div({
|
|
7852
7965
|
"&:not(:focus-within)": visuallyHiddenStyle
|
|
7853
7966
|
});
|
|
7854
7967
|
var ScreenReaderOnly = ({
|
|
@@ -7859,15 +7972,15 @@ var ScreenReaderOnly = ({
|
|
|
7859
7972
|
}) => {
|
|
7860
7973
|
const accessibleText = isNotNil12(text) ? text : children;
|
|
7861
7974
|
if (focusable) {
|
|
7862
|
-
return /* @__PURE__ */
|
|
7975
|
+
return /* @__PURE__ */ jsx197(VisuallyHiddenButFocusable, { ...otherProps, children: accessibleText });
|
|
7863
7976
|
}
|
|
7864
|
-
return /* @__PURE__ */
|
|
7977
|
+
return /* @__PURE__ */ jsx197(VisuallyHidden, { ...otherProps, children: accessibleText });
|
|
7865
7978
|
};
|
|
7866
7979
|
ScreenReaderOnly.displayName = "ScreenReaderOnly";
|
|
7867
7980
|
|
|
7868
7981
|
// src/components/Modal/ModalHeader.tsx
|
|
7869
|
-
import { jsx as
|
|
7870
|
-
var Header =
|
|
7982
|
+
import { jsx as jsx198, jsxs as jsxs19 } from "react/jsx-runtime";
|
|
7983
|
+
var Header = styled33.header`
|
|
7871
7984
|
display: flex;
|
|
7872
7985
|
order: 1;
|
|
7873
7986
|
gap: var(--wui-space-01);
|
|
@@ -7879,7 +7992,7 @@ var Header = styled32.header`
|
|
|
7879
7992
|
margin-top: 0;
|
|
7880
7993
|
}
|
|
7881
7994
|
`;
|
|
7882
|
-
var Title =
|
|
7995
|
+
var Title = styled33(DialogTitle)`
|
|
7883
7996
|
font-family: var(--wui-typography-heading-2-family);
|
|
7884
7997
|
line-height: var(--wui-typography-heading-2-line-height);
|
|
7885
7998
|
font-size: var(--wui-typography-heading-2-size);
|
|
@@ -7891,26 +8004,26 @@ var ModalHeader = ({
|
|
|
7891
8004
|
hideCloseButton
|
|
7892
8005
|
}) => {
|
|
7893
8006
|
const TitleWrapper = hideTitle ? ScreenReaderOnly : Title;
|
|
7894
|
-
return /* @__PURE__ */
|
|
7895
|
-
/* @__PURE__ */
|
|
7896
|
-
hideCloseButton ? null : /* @__PURE__ */
|
|
8007
|
+
return /* @__PURE__ */ jsxs19(Header, { children: [
|
|
8008
|
+
/* @__PURE__ */ jsx198(TitleWrapper, { children: title }),
|
|
8009
|
+
hideCloseButton ? null : /* @__PURE__ */ jsx198(ModalCloseButton, {})
|
|
7897
8010
|
] });
|
|
7898
8011
|
};
|
|
7899
8012
|
|
|
7900
8013
|
// src/components/Modal/ModalContent.tsx
|
|
7901
8014
|
import { forwardRef as forwardRef14 } from "react";
|
|
7902
|
-
import
|
|
8015
|
+
import styled34 from "styled-components";
|
|
7903
8016
|
import { Content as DialogContent } from "@radix-ui/react-dialog";
|
|
7904
8017
|
|
|
7905
8018
|
// src/private/hooks/useFocusRestore/useFocusRestore.ts
|
|
7906
|
-
import { useRef as
|
|
8019
|
+
import { useRef as useRef7, useEffect as useEffect3 } from "react";
|
|
7907
8020
|
import { isNotNil as isNotNil13 } from "@wistia/type-guards";
|
|
7908
8021
|
var useFocusRestore = () => {
|
|
7909
|
-
const previouslyFocusedRef =
|
|
7910
|
-
|
|
8022
|
+
const previouslyFocusedRef = useRef7(null);
|
|
8023
|
+
useEffect3(() => {
|
|
7911
8024
|
previouslyFocusedRef.current = document.activeElement;
|
|
7912
8025
|
}, []);
|
|
7913
|
-
|
|
8026
|
+
useEffect3(() => {
|
|
7914
8027
|
return () => {
|
|
7915
8028
|
if (isNotNil13(previouslyFocusedRef.current)) {
|
|
7916
8029
|
setTimeout(() => {
|
|
@@ -7922,8 +8035,8 @@ var useFocusRestore = () => {
|
|
|
7922
8035
|
};
|
|
7923
8036
|
|
|
7924
8037
|
// src/components/Modal/ModalContent.tsx
|
|
7925
|
-
import { jsx as
|
|
7926
|
-
var StyledModalContent =
|
|
8038
|
+
import { jsx as jsx199 } from "react/jsx-runtime";
|
|
8039
|
+
var StyledModalContent = styled34(DialogContent)`
|
|
7927
8040
|
background-color: var(--wui-color-bg-app);
|
|
7928
8041
|
box-sizing: border-box;
|
|
7929
8042
|
display: flex;
|
|
@@ -7966,7 +8079,7 @@ var StyledModalContent = styled33(DialogContent)`
|
|
|
7966
8079
|
var ModalContent = forwardRef14(
|
|
7967
8080
|
({ fullHeight, width, children, ...otherProps }, ref) => {
|
|
7968
8081
|
useFocusRestore();
|
|
7969
|
-
return /* @__PURE__ */
|
|
8082
|
+
return /* @__PURE__ */ jsx199(
|
|
7970
8083
|
StyledModalContent,
|
|
7971
8084
|
{
|
|
7972
8085
|
ref,
|
|
@@ -7981,8 +8094,8 @@ var ModalContent = forwardRef14(
|
|
|
7981
8094
|
|
|
7982
8095
|
// src/private/components/Backdrop/Backdrop.tsx
|
|
7983
8096
|
import { forwardRef as forwardRef15 } from "react";
|
|
7984
|
-
import
|
|
7985
|
-
import { jsx as
|
|
8097
|
+
import styled35 from "styled-components";
|
|
8098
|
+
import { jsx as jsx200 } from "react/jsx-runtime";
|
|
7986
8099
|
var backdropAnimationDuration = 150;
|
|
7987
8100
|
var alignVerticalMap = {
|
|
7988
8101
|
stretch: "normal",
|
|
@@ -7995,7 +8108,7 @@ var alignHorizontalMap = {
|
|
|
7995
8108
|
center: "center",
|
|
7996
8109
|
right: "end"
|
|
7997
8110
|
};
|
|
7998
|
-
var BackdropComponent =
|
|
8111
|
+
var BackdropComponent = styled35.div`
|
|
7999
8112
|
align-items: ${({ $alignVertical }) => alignVerticalMap[$alignVertical]};
|
|
8000
8113
|
animation-name: backdropShow;
|
|
8001
8114
|
animation-duration: ${() => `${backdropAnimationDuration}ms`};
|
|
@@ -8019,7 +8132,7 @@ var BackdropComponent = styled34.div`
|
|
|
8019
8132
|
}
|
|
8020
8133
|
`;
|
|
8021
8134
|
var Backdrop = forwardRef15(
|
|
8022
|
-
({ alignHorizontal = "center", alignVertical = "center", children, ...otherProps }, ref) => /* @__PURE__ */
|
|
8135
|
+
({ alignHorizontal = "center", alignVertical = "center", children, ...otherProps }, ref) => /* @__PURE__ */ jsx200(
|
|
8023
8136
|
BackdropComponent,
|
|
8024
8137
|
{
|
|
8025
8138
|
ref,
|
|
@@ -8033,8 +8146,8 @@ var Backdrop = forwardRef15(
|
|
|
8033
8146
|
Backdrop.displayName = "Backdrop";
|
|
8034
8147
|
|
|
8035
8148
|
// src/components/Modal/Modal.tsx
|
|
8036
|
-
import { jsx as
|
|
8037
|
-
var ModalBody =
|
|
8149
|
+
import { jsx as jsx201, jsxs as jsxs20 } from "react/jsx-runtime";
|
|
8150
|
+
var ModalBody = styled36.div`
|
|
8038
8151
|
flex-direction: column;
|
|
8039
8152
|
display: flex;
|
|
8040
8153
|
order: 2;
|
|
@@ -8052,7 +8165,7 @@ var Modal = forwardRef16(
|
|
|
8052
8165
|
width,
|
|
8053
8166
|
...props
|
|
8054
8167
|
}, ref) => {
|
|
8055
|
-
return /* @__PURE__ */
|
|
8168
|
+
return /* @__PURE__ */ jsx201(
|
|
8056
8169
|
DialogRoot,
|
|
8057
8170
|
{
|
|
8058
8171
|
onOpenChange: (open2) => {
|
|
@@ -8061,9 +8174,9 @@ var Modal = forwardRef16(
|
|
|
8061
8174
|
}
|
|
8062
8175
|
},
|
|
8063
8176
|
open: isOpen,
|
|
8064
|
-
children: /* @__PURE__ */
|
|
8065
|
-
/* @__PURE__ */
|
|
8066
|
-
/* @__PURE__ */
|
|
8177
|
+
children: /* @__PURE__ */ jsxs20(DialogPortal, { children: [
|
|
8178
|
+
/* @__PURE__ */ jsx201(Backdrop, {}),
|
|
8179
|
+
/* @__PURE__ */ jsxs20(
|
|
8067
8180
|
ModalContent,
|
|
8068
8181
|
{
|
|
8069
8182
|
ref,
|
|
@@ -8080,8 +8193,8 @@ var Modal = forwardRef16(
|
|
|
8080
8193
|
width,
|
|
8081
8194
|
...props,
|
|
8082
8195
|
children: [
|
|
8083
|
-
/* @__PURE__ */
|
|
8084
|
-
/* @__PURE__ */
|
|
8196
|
+
/* @__PURE__ */ jsx201(ModalBody, { children }),
|
|
8197
|
+
/* @__PURE__ */ jsx201(
|
|
8085
8198
|
ModalHeader,
|
|
8086
8199
|
{
|
|
8087
8200
|
hideCloseButton,
|
|
@@ -8101,15 +8214,15 @@ Modal.displayName = "Modal";
|
|
|
8101
8214
|
|
|
8102
8215
|
// src/components/Radio/Radio.tsx
|
|
8103
8216
|
import { forwardRef as forwardRef17, useId as useId3 } from "react";
|
|
8104
|
-
import
|
|
8217
|
+
import styled37, { css as css21 } from "styled-components";
|
|
8105
8218
|
import { isNonEmptyString as isNonEmptyString3 } from "@wistia/type-guards";
|
|
8106
|
-
import { jsx as
|
|
8107
|
-
var StyledLabelWrapper2 =
|
|
8219
|
+
import { jsx as jsx202, jsxs as jsxs21 } from "react/jsx-runtime";
|
|
8220
|
+
var StyledLabelWrapper2 = styled37.div`
|
|
8108
8221
|
display: flex;
|
|
8109
8222
|
flex-direction: column;
|
|
8110
8223
|
padding-left: var(--wui-space-02);
|
|
8111
8224
|
`;
|
|
8112
|
-
var StyledRadio =
|
|
8225
|
+
var StyledRadio = styled37.input`
|
|
8113
8226
|
box-shadow: ${({ type }) => type === "checkbox" ? "inset 0 0.5px 1.5px 0 rgba(0, 0, 0, 0.38)" : "none"};
|
|
8114
8227
|
appearance: none;
|
|
8115
8228
|
margin: 0;
|
|
@@ -8151,7 +8264,7 @@ var defaultHoverStyle = css21`
|
|
|
8151
8264
|
/* TODO Lamp to design hover state */
|
|
8152
8265
|
cursor: pointer;
|
|
8153
8266
|
`;
|
|
8154
|
-
var StyledRadioWrapper =
|
|
8267
|
+
var StyledRadioWrapper = styled37.div`
|
|
8155
8268
|
align-items: baseline;
|
|
8156
8269
|
border: 1px solid transparent;
|
|
8157
8270
|
border-radius: 4px;
|
|
@@ -8189,13 +8302,13 @@ var Radio = forwardRef17(
|
|
|
8189
8302
|
}, ref) => {
|
|
8190
8303
|
const generatedId = useId3();
|
|
8191
8304
|
const computedId = isNonEmptyString3(id) ? id : `ui-radio-${generatedId}`;
|
|
8192
|
-
return /* @__PURE__ */
|
|
8305
|
+
return /* @__PURE__ */ jsxs21(
|
|
8193
8306
|
StyledRadioWrapper,
|
|
8194
8307
|
{
|
|
8195
8308
|
"aria-invalid": otherProps["aria-invalid"],
|
|
8196
8309
|
disabled,
|
|
8197
8310
|
children: [
|
|
8198
|
-
/* @__PURE__ */
|
|
8311
|
+
/* @__PURE__ */ jsx202(
|
|
8199
8312
|
StyledRadio,
|
|
8200
8313
|
{
|
|
8201
8314
|
ref,
|
|
@@ -8210,8 +8323,8 @@ var Radio = forwardRef17(
|
|
|
8210
8323
|
...otherProps
|
|
8211
8324
|
}
|
|
8212
8325
|
),
|
|
8213
|
-
/* @__PURE__ */
|
|
8214
|
-
/* @__PURE__ */
|
|
8326
|
+
/* @__PURE__ */ jsxs21(StyledLabelWrapper2, { children: [
|
|
8327
|
+
/* @__PURE__ */ jsx202(
|
|
8215
8328
|
Label,
|
|
8216
8329
|
{
|
|
8217
8330
|
disabled,
|
|
@@ -8220,7 +8333,7 @@ var Radio = forwardRef17(
|
|
|
8220
8333
|
children: label
|
|
8221
8334
|
}
|
|
8222
8335
|
),
|
|
8223
|
-
/* @__PURE__ */
|
|
8336
|
+
/* @__PURE__ */ jsx202(LabelDescription, { children: description })
|
|
8224
8337
|
] })
|
|
8225
8338
|
]
|
|
8226
8339
|
}
|
|
@@ -8231,10 +8344,10 @@ Radio.displayName = "Radio";
|
|
|
8231
8344
|
|
|
8232
8345
|
// src/components/Tag/Tag.tsx
|
|
8233
8346
|
import { forwardRef as forwardRef18 } from "react";
|
|
8234
|
-
import
|
|
8347
|
+
import styled38 from "styled-components";
|
|
8235
8348
|
import { isNil as isNil11, isNotNil as isNotNil15, isNonEmptyString as isNonEmptyString4 } from "@wistia/type-guards";
|
|
8236
|
-
import { Fragment as
|
|
8237
|
-
var TagLabel =
|
|
8349
|
+
import { Fragment as Fragment3, jsx as jsx203, jsxs as jsxs22 } from "react/jsx-runtime";
|
|
8350
|
+
var TagLabel = styled38.a`
|
|
8238
8351
|
${({ $colorScheme }) => getColorScheme($colorScheme)};
|
|
8239
8352
|
font-size: var(--wui-typography-label-4-size);
|
|
8240
8353
|
font-weight: var(--wui-typography-label-4-weight);
|
|
@@ -8262,14 +8375,14 @@ var TagLabel = styled37.a`
|
|
|
8262
8375
|
box-shadow: inset 0 0 0 2px var(--wui-color-border-secondary);
|
|
8263
8376
|
}
|
|
8264
8377
|
`;
|
|
8265
|
-
var TagDivider =
|
|
8378
|
+
var TagDivider = styled38.div`
|
|
8266
8379
|
${({ $colorScheme }) => getColorScheme($colorScheme)};
|
|
8267
8380
|
border-left: 1px solid var(--wui-color-border);
|
|
8268
8381
|
display: flex;
|
|
8269
8382
|
height: 14px;
|
|
8270
8383
|
width: 1px;
|
|
8271
8384
|
`;
|
|
8272
|
-
var StyledRemoveButton =
|
|
8385
|
+
var StyledRemoveButton = styled38.button`
|
|
8273
8386
|
${({ $colorScheme }) => getColorScheme($colorScheme)};
|
|
8274
8387
|
all: unset;
|
|
8275
8388
|
cursor: pointer;
|
|
@@ -8297,7 +8410,7 @@ var StyledRemoveButton = styled37.button`
|
|
|
8297
8410
|
box-shadow: inset 0 0 0 2px var(--wui-color-border-secondary);
|
|
8298
8411
|
}
|
|
8299
8412
|
`;
|
|
8300
|
-
var StyledTag =
|
|
8413
|
+
var StyledTag = styled38.div`
|
|
8301
8414
|
${({ $colorScheme }) => getColorScheme($colorScheme)};
|
|
8302
8415
|
align-items: center;
|
|
8303
8416
|
background-color: var(--wui-color-bg-surface-secondary);
|
|
@@ -8314,23 +8427,23 @@ var RemoveButton = ({ onClickRemove, onClickRemoveLabel, colorScheme }) => {
|
|
|
8314
8427
|
"for accessibility, onClickRemoveLabel must be provided if onClickRemove is provided"
|
|
8315
8428
|
);
|
|
8316
8429
|
}
|
|
8317
|
-
return /* @__PURE__ */
|
|
8318
|
-
/* @__PURE__ */
|
|
8319
|
-
/* @__PURE__ */
|
|
8430
|
+
return /* @__PURE__ */ jsxs22(Fragment3, { children: [
|
|
8431
|
+
/* @__PURE__ */ jsx203(TagDivider, { $colorScheme: colorScheme }),
|
|
8432
|
+
/* @__PURE__ */ jsxs22(
|
|
8320
8433
|
StyledRemoveButton,
|
|
8321
8434
|
{
|
|
8322
8435
|
$colorScheme: colorScheme,
|
|
8323
8436
|
onClick: onClickRemove,
|
|
8324
8437
|
type: "button",
|
|
8325
8438
|
children: [
|
|
8326
|
-
/* @__PURE__ */
|
|
8439
|
+
/* @__PURE__ */ jsx203(
|
|
8327
8440
|
Icon,
|
|
8328
8441
|
{
|
|
8329
8442
|
size: "sm",
|
|
8330
8443
|
type: "close"
|
|
8331
8444
|
}
|
|
8332
8445
|
),
|
|
8333
|
-
/* @__PURE__ */
|
|
8446
|
+
/* @__PURE__ */ jsx203(ScreenReaderOnly, { children: onClickRemoveLabel })
|
|
8334
8447
|
]
|
|
8335
8448
|
}
|
|
8336
8449
|
)
|
|
@@ -8339,14 +8452,14 @@ var RemoveButton = ({ onClickRemove, onClickRemoveLabel, colorScheme }) => {
|
|
|
8339
8452
|
var Tag = forwardRef18(
|
|
8340
8453
|
({ onClickRemove, colorScheme = "inherit", href, label, onClickRemoveLabel, ...otherProps }, ref) => {
|
|
8341
8454
|
const labelProps = isNotNil15(href) && isNonEmptyString4(href) ? { href, as: "a" } : { as: "span" };
|
|
8342
|
-
return /* @__PURE__ */
|
|
8455
|
+
return /* @__PURE__ */ jsxs22(
|
|
8343
8456
|
StyledTag,
|
|
8344
8457
|
{
|
|
8345
8458
|
ref,
|
|
8346
8459
|
$colorScheme: colorScheme,
|
|
8347
8460
|
...otherProps,
|
|
8348
8461
|
children: [
|
|
8349
|
-
/* @__PURE__ */
|
|
8462
|
+
/* @__PURE__ */ jsx203(
|
|
8350
8463
|
TagLabel,
|
|
8351
8464
|
{
|
|
8352
8465
|
...labelProps,
|
|
@@ -8354,7 +8467,7 @@ var Tag = forwardRef18(
|
|
|
8354
8467
|
children: label
|
|
8355
8468
|
}
|
|
8356
8469
|
),
|
|
8357
|
-
/* @__PURE__ */
|
|
8470
|
+
/* @__PURE__ */ jsx203(
|
|
8358
8471
|
RemoveButton,
|
|
8359
8472
|
{
|
|
8360
8473
|
colorScheme,
|
|
@@ -8377,8 +8490,8 @@ import {
|
|
|
8377
8490
|
Portal,
|
|
8378
8491
|
Arrow
|
|
8379
8492
|
} from "@radix-ui/react-tooltip";
|
|
8380
|
-
import
|
|
8381
|
-
import { jsx as
|
|
8493
|
+
import styled39, { css as css22 } from "styled-components";
|
|
8494
|
+
import { jsx as jsx204, jsxs as jsxs23 } from "react/jsx-runtime";
|
|
8382
8495
|
var CompactTooltipStyles = css22`
|
|
8383
8496
|
--tooltip-font-size: var(--wui-typography-label-4-size);
|
|
8384
8497
|
--tooltip-line-height: var(--wui-typography-label-4-line-height);
|
|
@@ -8386,7 +8499,7 @@ var CompactTooltipStyles = css22`
|
|
|
8386
8499
|
--tooltip-horizontal-padding: var(--wui-space-02);
|
|
8387
8500
|
--tooltip-vertical-padding: var(--wui-space-03);
|
|
8388
8501
|
`;
|
|
8389
|
-
var StyledContent =
|
|
8502
|
+
var StyledContent = styled39(Content)`
|
|
8390
8503
|
--tooltip-font-family: var(--wui-typography-family-default);
|
|
8391
8504
|
--tooltip-border-radius: var(--wui-border-radius-05);
|
|
8392
8505
|
--tooltip-bg: var(--wui-color-bg-tooltip);
|
|
@@ -8444,14 +8557,14 @@ var Tooltip = ({
|
|
|
8444
8557
|
if (forceOpen === true) {
|
|
8445
8558
|
rootProps.open = true;
|
|
8446
8559
|
}
|
|
8447
|
-
return /* @__PURE__ */
|
|
8560
|
+
return /* @__PURE__ */ jsxs23(
|
|
8448
8561
|
Root,
|
|
8449
8562
|
{
|
|
8450
8563
|
delayDuration: delay,
|
|
8451
8564
|
...rootProps,
|
|
8452
8565
|
children: [
|
|
8453
|
-
/* @__PURE__ */
|
|
8454
|
-
/* @__PURE__ */
|
|
8566
|
+
/* @__PURE__ */ jsx204(Trigger, { asChild: true, children }),
|
|
8567
|
+
/* @__PURE__ */ jsx204(Portal, { children: /* @__PURE__ */ jsxs23(
|
|
8455
8568
|
StyledContent,
|
|
8456
8569
|
{
|
|
8457
8570
|
$compact: compact,
|
|
@@ -8459,7 +8572,7 @@ var Tooltip = ({
|
|
|
8459
8572
|
sideOffset: hideArrow ? VISUAL_OFFSET : VISUAL_OFFSET - 2,
|
|
8460
8573
|
children: [
|
|
8461
8574
|
content,
|
|
8462
|
-
!hideArrow ? /* @__PURE__ */
|
|
8575
|
+
!hideArrow ? /* @__PURE__ */ jsx204(Arrow, { asChild: true, children: /* @__PURE__ */ jsx204(
|
|
8463
8576
|
"svg",
|
|
8464
8577
|
{
|
|
8465
8578
|
fill: "var(--tooltip-bg)",
|
|
@@ -8468,7 +8581,7 @@ var Tooltip = ({
|
|
|
8468
8581
|
viewBox: "0 0 12 8",
|
|
8469
8582
|
width: "12",
|
|
8470
8583
|
xmlns: "http://www.w3.org/2000/svg",
|
|
8471
|
-
children: /* @__PURE__ */
|
|
8584
|
+
children: /* @__PURE__ */ jsx204("path", { d: "M6.8 6.93333C6.4 7.46667 5.6 7.46667 5.2 6.93333L-2.54292e-07 -1.04907e-06L12 0L6.8 6.93333Z" })
|
|
8472
8585
|
}
|
|
8473
8586
|
) }) : null
|
|
8474
8587
|
]
|
|
@@ -8481,26 +8594,26 @@ var Tooltip = ({
|
|
|
8481
8594
|
Tooltip.displayName = "Tooltip";
|
|
8482
8595
|
|
|
8483
8596
|
// src/components/WistiaLogo/WistiaLogo.tsx
|
|
8484
|
-
import
|
|
8597
|
+
import styled40 from "styled-components";
|
|
8485
8598
|
import { isNotNil as isNotNil16 } from "@wistia/type-guards";
|
|
8486
|
-
import { jsx as
|
|
8599
|
+
import { jsx as jsx205, jsxs as jsxs24 } from "react/jsx-runtime";
|
|
8487
8600
|
var renderBrandmark = (brandmarkColor, iconOnly) => {
|
|
8488
8601
|
if (iconOnly) {
|
|
8489
|
-
return /* @__PURE__ */
|
|
8602
|
+
return /* @__PURE__ */ jsx205(
|
|
8490
8603
|
"g",
|
|
8491
8604
|
{
|
|
8492
8605
|
"data-testid": "ui-wistia-logo-brandmark",
|
|
8493
8606
|
fill: brandmarkColor,
|
|
8494
|
-
children: /* @__PURE__ */
|
|
8607
|
+
children: /* @__PURE__ */ jsx205("path", { d: "M16.09 17.1h-5.2c-1.58 0-3.08.68-4.11 1.87L.21 26.53c4.78.25 9.78.25 13.3.25 18.31 0 20.89-11.27 20.89-16.55-1.59 1.93-6.06 6.87-18.32 6.87ZM32.14 0c-.08.92-.59 4.69-11.31 4.69-8.72 0-12.24 0-20.83-.17l6.44 7.4a6.657 6.657 0 0 0 4.96 2.3c2.13.03 5.05.06 5.53.06 11.01 0 17.19-5.05 17.19-9.89 0-2.01-.67-3.44-1.97-4.4Z" })
|
|
8495
8608
|
}
|
|
8496
8609
|
);
|
|
8497
8610
|
}
|
|
8498
|
-
return /* @__PURE__ */
|
|
8611
|
+
return /* @__PURE__ */ jsx205(
|
|
8499
8612
|
"g",
|
|
8500
8613
|
{
|
|
8501
8614
|
"data-testid": "ui-wistia-logo-brandmark",
|
|
8502
8615
|
fill: brandmarkColor,
|
|
8503
|
-
children: /* @__PURE__ */
|
|
8616
|
+
children: /* @__PURE__ */ jsx205("path", { d: "M16.09 21.37h-5.2c-1.58 0-3.08.68-4.11 1.87L.21 30.8c4.78.25 9.78.25 13.3.25 18.31 0 20.89-11.27 20.89-16.55-1.59 1.93-6.06 6.87-18.32 6.87Zm16.05-17.1c-.08.92-.59 4.69-11.31 4.69-8.72 0-12.24 0-20.83-.17l6.44 7.4a6.657 6.657 0 0 0 4.96 2.3c2.13.03 5.05.06 5.53.06 11.01 0 17.19-5.05 17.19-9.89 0-2.01-.67-3.44-1.97-4.4Z" })
|
|
8504
8617
|
}
|
|
8505
8618
|
);
|
|
8506
8619
|
};
|
|
@@ -8508,12 +8621,12 @@ var renderLogotype = (logotypeColor, iconOnly) => {
|
|
|
8508
8621
|
if (iconOnly) {
|
|
8509
8622
|
return null;
|
|
8510
8623
|
}
|
|
8511
|
-
return /* @__PURE__ */
|
|
8624
|
+
return /* @__PURE__ */ jsx205(
|
|
8512
8625
|
"g",
|
|
8513
8626
|
{
|
|
8514
8627
|
"data-testid": "ui-wistia-logo-logotype",
|
|
8515
8628
|
fill: logotypeColor,
|
|
8516
|
-
children: /* @__PURE__ */
|
|
8629
|
+
children: /* @__PURE__ */ jsx205("path", { d: "M70.16 8.66v15.18c0 1.68-.35 3.09-1.05 4.23a6.612 6.612 0 0 1-2.85 2.54c-1.19.55-2.52.82-4.01.82s-2.8-.28-4.01-.85a6.655 6.655 0 0 1-3.11-2.96c-.08.15-.16.29-.24.42a6.552 6.552 0 0 1-2.87 2.54c-1.2.56-2.54.85-4.01.85s-2.8-.27-3.94-.82a6.214 6.214 0 0 1-2.71-2.52c-.67-1.14-1.01-2.56-1.02-4.25l-.22-15.18h7.34V22.3c0 .82.19 1.37.56 1.67.39.28.85.42 1.38.42s1.02-.15 1.45-.45c.43-.3.65-.85.65-1.65V8.65h7.3v13.64c0 .8.22 1.35.65 1.65.43.3.91.45 1.45.45s.99-.14 1.36-.42c.39-.3.58-.85.58-1.67V8.66h7.34Zm2.45 0v22.26h7.34V8.66h-7.34Zm5.67-1.87c.61-.3 1.08-.71 1.42-1.25.36-.55.53-1.19.53-1.94s-.18-1.34-.53-1.89A3.43 3.43 0 0 0 78.28.44c-.59-.3-1.25-.45-1.98-.45s-1.42.15-2.02.45c-.59.3-1.07.72-1.42 1.27-.36.55-.53 1.18-.53 1.89 0 1.1.38 1.97 1.13 2.63.76.65 1.71.98 2.85.98.73 0 1.39-.14 1.98-.42Zm8.86 1.96c-1.42.4-2.6 1.11-3.54 2.14-.93 1.02-1.4 2.4-1.4 4.12 0 1.11.17 2.09.51 2.94.36.85.82 1.62 1.38 2.34.22.28.55.65.98 1.11.37.4.64.72.8.96.18.24.27.47.27.69 0 .5-.4.87-1.2 1.09-.8.21-1.62.31-2.47.31-.1-.01-.22-.02-.33-.02l1.02 6.94c.42.07.92.11 1.51.11 1.9 0 3.6-.28 5.1-.85 1.5-.56 2.68-1.42 3.54-2.56.88-1.14 1.31-2.55 1.31-4.23 0-.68-.07-1.31-.22-1.87-.13-.58-.32-1.09-.56-1.54a6.64 6.64 0 0 0-.8-1.27c-.3-.37-.74-.82-1.34-1.36-.39-.33-.67-.59-.85-.8-.18-.22-.27-.45-.27-.67 0-.46.26-.79.78-.98.53-.19 1.17-.29 1.91-.29.25 0 .51.01.78.04l-.71-6.88a10.4 10.4 0 0 0-1.56-.11c-1.66 0-3.21.21-4.65.62Zm19.54 15.71c-.99 0-1.71-.23-2.14-.69-.42-.47-.62-1.18-.62-2.11v-6.57h4.21V8.66h-4.21V3.38l-7.34 1.85V24.1c0 2.45.47 4.29 1.4 5.52.95 1.22 2.45 1.83 4.49 1.83.95 0 1.86-.07 2.74-.22.88-.13 1.62-.34 2.25-.62l1.38-6.3c-.55.1-1.27.16-2.16.16Zm4.13-15.8v22.26h7.34V8.66h-7.34Zm5.67-1.87c.61-.3 1.08-.71 1.42-1.25.36-.55.53-1.19.53-1.94s-.18-1.34-.53-1.89a3.43 3.43 0 0 0-1.42-1.27c-.59-.3-1.25-.45-1.98-.45s-1.42.15-2.02.45c-.59.3-1.07.72-1.42 1.27-.36.55-.53 1.18-.53 1.89 0 1.1.38 1.97 1.14 2.63.76.65 1.71.98 2.85.98.73 0 1.39-.14 1.98-.42Zm27.51 1.87v22.26h-7.34v-2.28c-.41.43-.85.83-1.34 1.19-1.44 1.07-3.12 1.6-5.05 1.6s-3.61-.52-5.1-1.56c-1.48-1.05-2.63-2.47-3.45-4.25-.82-1.78-1.22-3.73-1.22-5.85s.41-4.07 1.22-5.83c.82-1.78 1.97-3.19 3.45-4.23 1.48-1.05 3.18-1.58 5.1-1.58s3.61.53 5.05 1.6c.48.36.93.75 1.34 1.19V8.66h7.34Zm-7.1 11.11c0-.8-.19-1.53-.56-2.18-.37-.67-.88-1.19-1.54-1.58-.64-.39-1.34-.58-2.09-.58s-1.45.19-2.09.58c-.64.39-1.15.91-1.54 1.58-.37.67-.56 1.39-.56 2.18s.19 1.51.56 2.18c.39.67.9 1.19 1.54 1.58.64.39 1.34.58 2.09.58s1.45-.19 2.09-.58c.65-.39 1.16-.91 1.54-1.56.37-.67.56-1.4.56-2.2Z" })
|
|
8517
8630
|
}
|
|
8518
8631
|
);
|
|
8519
8632
|
};
|
|
@@ -8523,7 +8636,7 @@ var computedViewBox = (iconOnly) => {
|
|
|
8523
8636
|
}
|
|
8524
8637
|
return "0 0 144 31.47";
|
|
8525
8638
|
};
|
|
8526
|
-
var WistiaLogoComponent =
|
|
8639
|
+
var WistiaLogoComponent = styled40.svg`
|
|
8527
8640
|
height: ${({ height }) => `${height}px`};
|
|
8528
8641
|
|
|
8529
8642
|
/* ensure it will always fit on mobile */
|
|
@@ -8565,7 +8678,7 @@ var WistiaLogo = ({
|
|
|
8565
8678
|
};
|
|
8566
8679
|
const brandmarkColor = VARIANT_COLORS[variant].brandmark;
|
|
8567
8680
|
const logotypeColor = VARIANT_COLORS[variant].logotype;
|
|
8568
|
-
const Logo = /* @__PURE__ */
|
|
8681
|
+
const Logo = /* @__PURE__ */ jsxs24(
|
|
8569
8682
|
WistiaLogoComponent,
|
|
8570
8683
|
{
|
|
8571
8684
|
$hoverColor: hoverColor,
|
|
@@ -8575,63 +8688,16 @@ var WistiaLogo = ({
|
|
|
8575
8688
|
xmlns: "http://www.w3.org/2000/svg",
|
|
8576
8689
|
...otherProps,
|
|
8577
8690
|
children: [
|
|
8578
|
-
/* @__PURE__ */
|
|
8579
|
-
isNotNil16(description) ? /* @__PURE__ */
|
|
8691
|
+
/* @__PURE__ */ jsx205("title", { children: title }),
|
|
8692
|
+
isNotNil16(description) ? /* @__PURE__ */ jsx205("desc", { children: description }) : null,
|
|
8580
8693
|
renderBrandmark(brandmarkColor, iconOnly),
|
|
8581
8694
|
renderLogotype(logotypeColor, iconOnly)
|
|
8582
8695
|
]
|
|
8583
8696
|
}
|
|
8584
8697
|
);
|
|
8585
|
-
return href !== void 0 ? /* @__PURE__ */
|
|
8698
|
+
return href !== void 0 ? /* @__PURE__ */ jsx205("a", { href, children: Logo }) : Logo;
|
|
8586
8699
|
};
|
|
8587
8700
|
WistiaLogo.displayName = "WistiaLogo";
|
|
8588
|
-
|
|
8589
|
-
// src/components/Breadcrumbs/Breadcrumbs.tsx
|
|
8590
|
-
import styled40 from "styled-components";
|
|
8591
|
-
import { jsx as jsx204 } from "react/jsx-runtime";
|
|
8592
|
-
var StyledBreadcrumbs = styled40.nav`
|
|
8593
|
-
display: flex;
|
|
8594
|
-
align-items: center;
|
|
8595
|
-
gap: var(--wui-space-01);
|
|
8596
|
-
|
|
8597
|
-
> svg:last-of-type {
|
|
8598
|
-
display: none;
|
|
8599
|
-
}
|
|
8600
|
-
`;
|
|
8601
|
-
var Breadcrumbs = ({ children, ...props }) => {
|
|
8602
|
-
return /* @__PURE__ */ jsx204(
|
|
8603
|
-
StyledBreadcrumbs,
|
|
8604
|
-
{
|
|
8605
|
-
"aria-label": "Breadcrumbs",
|
|
8606
|
-
...props,
|
|
8607
|
-
children
|
|
8608
|
-
}
|
|
8609
|
-
);
|
|
8610
|
-
};
|
|
8611
|
-
Breadcrumbs.displayName = "Breadcrumbs";
|
|
8612
|
-
|
|
8613
|
-
// src/components/Breadcrumbs/Breadcrumb.tsx
|
|
8614
|
-
import { Fragment as Fragment3, jsx as jsx205, jsxs as jsxs24 } from "react/jsx-runtime";
|
|
8615
|
-
var Breadcrumb = ({ icon, href, children }) => {
|
|
8616
|
-
return /* @__PURE__ */ jsxs24(Fragment3, { children: [
|
|
8617
|
-
/* @__PURE__ */ jsx205(
|
|
8618
|
-
Button,
|
|
8619
|
-
{
|
|
8620
|
-
href,
|
|
8621
|
-
leftIcon: icon,
|
|
8622
|
-
variant: "ghost",
|
|
8623
|
-
children
|
|
8624
|
-
}
|
|
8625
|
-
),
|
|
8626
|
-
/* @__PURE__ */ jsx205(
|
|
8627
|
-
Icon,
|
|
8628
|
-
{
|
|
8629
|
-
size: "sm",
|
|
8630
|
-
type: "caret-right"
|
|
8631
|
-
}
|
|
8632
|
-
)
|
|
8633
|
-
] });
|
|
8634
|
-
};
|
|
8635
8701
|
export {
|
|
8636
8702
|
ActionButton,
|
|
8637
8703
|
Avatar,
|
|
@@ -8686,6 +8752,7 @@ export {
|
|
|
8686
8752
|
useAriaLive,
|
|
8687
8753
|
useBoolean,
|
|
8688
8754
|
useFormState,
|
|
8755
|
+
useKey,
|
|
8689
8756
|
useMq,
|
|
8690
8757
|
useToast,
|
|
8691
8758
|
useWindowSize
|