@wistia/ui 0.0.18 → 0.0.20
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 +326 -42
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.mts +137 -2
- package/dist/index.d.ts +137 -2
- package/dist/index.mjs +324 -42
- package/dist/index.mjs.map +1 -1
- package/package.json +24 -24
package/dist/index.mjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
|
|
2
2
|
/*
|
|
3
|
-
* @license @wistia/ui v0.0.
|
|
3
|
+
* @license @wistia/ui v0.0.20
|
|
4
4
|
*
|
|
5
5
|
* Copyright (c) 2024-2024, Wistia, Inc. and its affiliates.
|
|
6
6
|
*
|
|
@@ -822,7 +822,7 @@ var colorAliasTokens = css4`
|
|
|
822
822
|
|
|
823
823
|
/* --- Default --- */
|
|
824
824
|
--wui-color-bg-fill: var(--wui-blue-9);
|
|
825
|
-
--wui-color-bg-fill-active: var(--wui-blue-
|
|
825
|
+
--wui-color-bg-fill-active: var(--wui-blue-11);
|
|
826
826
|
--wui-color-bg-fill-hover: var(--wui-blue-10);
|
|
827
827
|
--wui-color-bg-surface: var(--wui-gray-surface);
|
|
828
828
|
--wui-color-bg-surface-active: var(--wui-gray-4);
|
|
@@ -844,6 +844,7 @@ var colorAliasTokens = css4`
|
|
|
844
844
|
--wui-color-text-link: var(--wui-blue-9);
|
|
845
845
|
--wui-color-text-on-fill: var(--wui-gray-contrast);
|
|
846
846
|
--wui-color-text-secondary: var(--wui-gray-11);
|
|
847
|
+
--wui-color-focus-ring: var(--wui-blue-9);
|
|
847
848
|
|
|
848
849
|
/* --- Semantic --- */
|
|
849
850
|
|
|
@@ -871,6 +872,7 @@ var colorAliasTokens = css4`
|
|
|
871
872
|
--wui-color-text-link-error: var(--wui-error-11);
|
|
872
873
|
--wui-color-text-on-fill-error: var(--wui-error-contrast);
|
|
873
874
|
--wui-color-text-secondary-error: var(--wui-error-11);
|
|
875
|
+
--wui-color-focus-ring-error: var(--wui-error-9);
|
|
874
876
|
|
|
875
877
|
/* Info */
|
|
876
878
|
--wui-color-bg-fill-active-info: var(--wui-blue-11);
|
|
@@ -896,6 +898,7 @@ var colorAliasTokens = css4`
|
|
|
896
898
|
--wui-color-text-link-info: var(--wui-blue-9);
|
|
897
899
|
--wui-color-text-on-fill-info: var(--wui-blue-contrast);
|
|
898
900
|
--wui-color-text-secondary-info: var(--wui-blue-11);
|
|
901
|
+
--wui-color-focus-ring-info: var(--wui-blue-9);
|
|
899
902
|
|
|
900
903
|
/* Success */
|
|
901
904
|
--wui-color-bg-fill-active-success: var(--wui-success-11);
|
|
@@ -921,6 +924,7 @@ var colorAliasTokens = css4`
|
|
|
921
924
|
--wui-color-text-on-fill-success: var(--wui-success-contrast);
|
|
922
925
|
--wui-color-text-secondary-success: var(--wui-success-11);
|
|
923
926
|
--wui-color-text-success: var(--wui-success-11);
|
|
927
|
+
--wui-color-focus-ring-success: var(--wui-success-9);
|
|
924
928
|
|
|
925
929
|
/* Warning */
|
|
926
930
|
--wui-color-bg-fill-active-warning: var(--wui-warning-11);
|
|
@@ -946,6 +950,7 @@ var colorAliasTokens = css4`
|
|
|
946
950
|
--wui-color-text-on-fill-warning: var(--wui-warning-contrast);
|
|
947
951
|
--wui-color-text-secondary-warning: var(--wui-warning-11);
|
|
948
952
|
--wui-color-text-warning: var(--wui-warning-11);
|
|
953
|
+
--wui-color-focus-ring-warning: var(--wui-warning-9);
|
|
949
954
|
|
|
950
955
|
/* --- Accent --- */
|
|
951
956
|
|
|
@@ -973,6 +978,7 @@ var colorAliasTokens = css4`
|
|
|
973
978
|
--wui-color-text-link-blue: var(--wui-blue-9);
|
|
974
979
|
--wui-color-text-on-fill-blue: var(--wui-blue-contrast);
|
|
975
980
|
--wui-color-text-secondary-blue: var(--wui-blue-5);
|
|
981
|
+
--wui-color-focus-ring-blue: var(--wui-blue-9);
|
|
976
982
|
|
|
977
983
|
/* Green */
|
|
978
984
|
--wui-color-bg-fill-active-green: var(--wui-green-11);
|
|
@@ -998,6 +1004,7 @@ var colorAliasTokens = css4`
|
|
|
998
1004
|
--wui-color-text-link-green: var(--wui-green-11);
|
|
999
1005
|
--wui-color-text-on-fill-green: var(--wui-green-contrast);
|
|
1000
1006
|
--wui-color-text-secondary-green: var(--wui-green-10);
|
|
1007
|
+
--wui-color-focus-ring-green: var(--wui-green-9);
|
|
1001
1008
|
|
|
1002
1009
|
/* Orange */
|
|
1003
1010
|
--wui-color-bg-fill-active-orange: var(--wui-orange-11);
|
|
@@ -1023,6 +1030,7 @@ var colorAliasTokens = css4`
|
|
|
1023
1030
|
--wui-color-text-on-fill-orange: var(--wui-orange-contrast);
|
|
1024
1031
|
--wui-color-text-orange: var(--wui-orange-11);
|
|
1025
1032
|
--wui-color-text-secondary-orange: var(--wui-orange-10);
|
|
1033
|
+
--wui-color-focus-ring-orange: var(--wui-orange-9);
|
|
1026
1034
|
|
|
1027
1035
|
/* Pink */
|
|
1028
1036
|
--wui-color-bg-fill-active-pink: var(--wui-pink-11);
|
|
@@ -1048,6 +1056,7 @@ var colorAliasTokens = css4`
|
|
|
1048
1056
|
--wui-color-text-on-fill-pink: var(--wui-pink-contrast);
|
|
1049
1057
|
--wui-color-text-pink: var(--wui-pink-11);
|
|
1050
1058
|
--wui-color-text-secondary-pink: var(--wui-pink-10);
|
|
1059
|
+
--wui-color-focus-ring-pink: var(--wui-pink-9);
|
|
1051
1060
|
|
|
1052
1061
|
/* Purple */
|
|
1053
1062
|
--wui-color-bg-fill-active-purple: var(--wui-purple-11);
|
|
@@ -1073,6 +1082,7 @@ var colorAliasTokens = css4`
|
|
|
1073
1082
|
--wui-color-text-on-fill-purple: var(--wui-purple-contrast);
|
|
1074
1083
|
--wui-color-text-purple: var(--wui-purple-11);
|
|
1075
1084
|
--wui-color-text-secondary-purple: var(--wui-purple-11);
|
|
1085
|
+
--wui-color-focus-ring-purple: var(--wui-purple-9);
|
|
1076
1086
|
|
|
1077
1087
|
/* Yellow */
|
|
1078
1088
|
--wui-color-bg-fill-active-yellow: var(--wui-yellow-11);
|
|
@@ -1098,6 +1108,7 @@ var colorAliasTokens = css4`
|
|
|
1098
1108
|
--wui-color-text-on-fill-yellow: var(--wui-yellow-contrast);
|
|
1099
1109
|
--wui-color-text-secondary-yellow: var(--wui-yellow-10);
|
|
1100
1110
|
--wui-color-text-yellow: var(--wui-yellow-11);
|
|
1111
|
+
--wui-color-focus-ring-yellow: var(--wui-yellow-9);
|
|
1101
1112
|
|
|
1102
1113
|
/* --- Misc --- */
|
|
1103
1114
|
--wui-color-bg-fill-white: #ffffff;
|
|
@@ -1541,7 +1552,8 @@ var colorSchemeSchema = [
|
|
|
1541
1552
|
{ token: "border-secondary-hover", step: "10" },
|
|
1542
1553
|
{ token: "border-secondary-active", step: "11" },
|
|
1543
1554
|
{ token: "icon", step: "11" },
|
|
1544
|
-
{ token: "icon-on-fill", step: "contrast" }
|
|
1555
|
+
{ token: "icon-on-fill", step: "contrast" },
|
|
1556
|
+
{ token: "focus-ring", step: "9" }
|
|
1545
1557
|
];
|
|
1546
1558
|
var defaultScheme = css9`
|
|
1547
1559
|
--wui-color-bg-surface: var(--wui-gray-surface);
|
|
@@ -1553,7 +1565,7 @@ var defaultScheme = css9`
|
|
|
1553
1565
|
--wui-color-bg-surface-tertiary: var(--wui-gray-5);
|
|
1554
1566
|
--wui-color-bg-fill: var(--wui-blue-9);
|
|
1555
1567
|
--wui-color-bg-fill-hover: var(--wui-blue-10);
|
|
1556
|
-
--wui-color-bg-fill-active: var(--wui-blue-
|
|
1568
|
+
--wui-color-bg-fill-active: var(--wui-blue-11);
|
|
1557
1569
|
--wui-color-text: var(--wui-gray-12);
|
|
1558
1570
|
--wui-color-text-high-contrast: var(--wui-gray-12);
|
|
1559
1571
|
--wui-color-text-link: var(--wui-blue-9);
|
|
@@ -1567,6 +1579,7 @@ var defaultScheme = css9`
|
|
|
1567
1579
|
--wui-color-border-secondary-active: var(--wui-gray-11);
|
|
1568
1580
|
--wui-color-icon: var(--wui-gray-11);
|
|
1569
1581
|
--wui-color-icon-on-fill: var(--wui-gray-contrast);
|
|
1582
|
+
--wui-color-focus-ring: var(--wui-blue-9);
|
|
1570
1583
|
`;
|
|
1571
1584
|
var getColorScheme = (colorScheme) => {
|
|
1572
1585
|
if (colorScheme === "inherit") {
|
|
@@ -2080,19 +2093,18 @@ var buttonBaseStyles = css11`
|
|
|
2080
2093
|
background: var(--button-color-bg-active);
|
|
2081
2094
|
}
|
|
2082
2095
|
|
|
2083
|
-
&:focus
|
|
2084
|
-
&.force-state-focus {
|
|
2096
|
+
&:focus {
|
|
2085
2097
|
outline: none;
|
|
2086
2098
|
}
|
|
2087
2099
|
|
|
2088
|
-
&:focus-visible
|
|
2089
|
-
|
|
2090
|
-
|
|
2091
|
-
|
|
2092
|
-
|
|
2100
|
+
&:focus-visible,
|
|
2101
|
+
&.force-state-focus {
|
|
2102
|
+
outline: 2px solid var(--wui-color-focus-ring);
|
|
2103
|
+
outline-offset: 2px;
|
|
2104
|
+
background: var(--button-color-bg-hover);
|
|
2093
2105
|
|
|
2094
2106
|
&[aria-disabled='true'] {
|
|
2095
|
-
outline:
|
|
2107
|
+
outline-color: var(--wui-color-border-disabled);
|
|
2096
2108
|
}
|
|
2097
2109
|
}
|
|
2098
2110
|
|
|
@@ -5547,9 +5559,7 @@ var Button = forwardRef3(
|
|
|
5547
5559
|
$size: responsiveSize,
|
|
5548
5560
|
$unstyled: unstyled,
|
|
5549
5561
|
$variant: variant,
|
|
5550
|
-
className
|
|
5551
|
-
forceState,
|
|
5552
|
-
isLoading
|
|
5562
|
+
className
|
|
5553
5563
|
};
|
|
5554
5564
|
if (forceState) {
|
|
5555
5565
|
commonProps.className = `${className ?? ""} force-state-${forceState}`;
|
|
@@ -5841,7 +5851,7 @@ var Checkbox = forwardRef4(
|
|
|
5841
5851
|
...otherProps
|
|
5842
5852
|
}, ref) => {
|
|
5843
5853
|
const generatedId = useId();
|
|
5844
|
-
const computedId = isNonEmptyString2(id) ? id : `vhs-
|
|
5854
|
+
const computedId = isNonEmptyString2(id) ? id : `vhs-checkbox-${generatedId}`;
|
|
5845
5855
|
return /* @__PURE__ */ jsxs6(StyledCheckboxWrapper, { children: [
|
|
5846
5856
|
/* @__PURE__ */ jsx166(
|
|
5847
5857
|
StyledCheckboxRoot,
|
|
@@ -6863,12 +6873,142 @@ var CheckboxMenuItem = ({
|
|
|
6863
6873
|
};
|
|
6864
6874
|
CheckboxMenuItem.displayName = "CheckboxMenuItem";
|
|
6865
6875
|
|
|
6876
|
+
// src/components/Radio/Radio.tsx
|
|
6877
|
+
import { forwardRef as forwardRef10, useId as useId2 } from "react";
|
|
6878
|
+
import styled23, { css as css18 } from "styled-components";
|
|
6879
|
+
import { isNonEmptyString as isNonEmptyString3 } from "@wistia/type-guards";
|
|
6880
|
+
import { jsx as jsx182, jsxs as jsxs12 } from "react/jsx-runtime";
|
|
6881
|
+
var StyledLabelWrapper2 = styled23.div`
|
|
6882
|
+
display: flex;
|
|
6883
|
+
flex-direction: column;
|
|
6884
|
+
padding-left: var(--wui-space-02);
|
|
6885
|
+
`;
|
|
6886
|
+
var StyledRadio = styled23.input`
|
|
6887
|
+
align-self: flex-start;
|
|
6888
|
+
box-shadow: ${({ type }) => type === "checkbox" ? "inset 0 0.5px 1.5px 0 rgba(0, 0, 0, 0.38)" : "none"};
|
|
6889
|
+
appearance: none;
|
|
6890
|
+
margin: 0;
|
|
6891
|
+
color: currentcolor;
|
|
6892
|
+
width: 14px;
|
|
6893
|
+
min-width: 14px;
|
|
6894
|
+
height: 14px;
|
|
6895
|
+
border: 1px solid var(--wui-color-border);
|
|
6896
|
+
border-radius: 50%;
|
|
6897
|
+
transform: translateY(5px); /* visually center the radio button */
|
|
6898
|
+
display: grid;
|
|
6899
|
+
place-content: center;
|
|
6900
|
+
|
|
6901
|
+
&&::before {
|
|
6902
|
+
content: '';
|
|
6903
|
+
width: 10px;
|
|
6904
|
+
height: 10px;
|
|
6905
|
+
border-radius: 50%;
|
|
6906
|
+
transform: scale(0);
|
|
6907
|
+
box-shadow: inset 1em 1em var(--wui-color-bg-fill);
|
|
6908
|
+
}
|
|
6909
|
+
|
|
6910
|
+
&&:checked::before {
|
|
6911
|
+
transform: scale(1);
|
|
6912
|
+
}
|
|
6913
|
+
`;
|
|
6914
|
+
var disabledStyle2 = css18`
|
|
6915
|
+
cursor: not-allowed;
|
|
6916
|
+
opacity: 0.5;
|
|
6917
|
+
`;
|
|
6918
|
+
var errorStyle = css18`
|
|
6919
|
+
/* TODO Lamp to design error state */
|
|
6920
|
+
&:hover,
|
|
6921
|
+
&:focus,
|
|
6922
|
+
&:active {
|
|
6923
|
+
border-color: transparent !important;
|
|
6924
|
+
}
|
|
6925
|
+
`;
|
|
6926
|
+
var defaultHoverStyle = css18`
|
|
6927
|
+
/* TODO Lamp to design hover state */
|
|
6928
|
+
cursor: pointer;
|
|
6929
|
+
`;
|
|
6930
|
+
var StyledRadioWrapper = styled23.div`
|
|
6931
|
+
align-items: center;
|
|
6932
|
+
border: 1px solid transparent;
|
|
6933
|
+
border-radius: 4px;
|
|
6934
|
+
display: flex;
|
|
6935
|
+
gap: var(--wui-space-02);
|
|
6936
|
+
padding: var(--wui-space-02);
|
|
6937
|
+
|
|
6938
|
+
&:hover {
|
|
6939
|
+
${defaultHoverStyle}
|
|
6940
|
+
}
|
|
6941
|
+
|
|
6942
|
+
&:focus-within {
|
|
6943
|
+
/* TODO Lamp to design focus state */
|
|
6944
|
+
background-color: #efefef;
|
|
6945
|
+
}
|
|
6946
|
+
|
|
6947
|
+
${({ hasError }) => hasError && errorStyle};
|
|
6948
|
+
${({ disabled }) => disabled && disabledStyle2};
|
|
6949
|
+
`;
|
|
6950
|
+
var Radio = forwardRef10(
|
|
6951
|
+
({
|
|
6952
|
+
checked,
|
|
6953
|
+
disabled = false,
|
|
6954
|
+
hasError = false,
|
|
6955
|
+
id,
|
|
6956
|
+
label,
|
|
6957
|
+
description,
|
|
6958
|
+
name,
|
|
6959
|
+
onChange,
|
|
6960
|
+
required = false,
|
|
6961
|
+
value = "false",
|
|
6962
|
+
...otherProps
|
|
6963
|
+
}, ref) => {
|
|
6964
|
+
const generatedId = useId2();
|
|
6965
|
+
const computedId = isNonEmptyString3(id) ? id : `vhs-radio-${generatedId}`;
|
|
6966
|
+
return /* @__PURE__ */ jsxs12(
|
|
6967
|
+
StyledRadioWrapper,
|
|
6968
|
+
{
|
|
6969
|
+
disabled,
|
|
6970
|
+
hasError,
|
|
6971
|
+
children: [
|
|
6972
|
+
/* @__PURE__ */ jsx182(
|
|
6973
|
+
StyledRadio,
|
|
6974
|
+
{
|
|
6975
|
+
ref,
|
|
6976
|
+
"aria-checked": checked,
|
|
6977
|
+
checked,
|
|
6978
|
+
disabled,
|
|
6979
|
+
id,
|
|
6980
|
+
name,
|
|
6981
|
+
onChange,
|
|
6982
|
+
type: "radio",
|
|
6983
|
+
value,
|
|
6984
|
+
...otherProps
|
|
6985
|
+
}
|
|
6986
|
+
),
|
|
6987
|
+
/* @__PURE__ */ jsxs12(StyledLabelWrapper2, { children: [
|
|
6988
|
+
/* @__PURE__ */ jsx182(
|
|
6989
|
+
Label,
|
|
6990
|
+
{
|
|
6991
|
+
disabled,
|
|
6992
|
+
htmlFor: computedId,
|
|
6993
|
+
required,
|
|
6994
|
+
children: label
|
|
6995
|
+
}
|
|
6996
|
+
),
|
|
6997
|
+
/* @__PURE__ */ jsx182(LabelDescription, { children: description })
|
|
6998
|
+
] })
|
|
6999
|
+
]
|
|
7000
|
+
}
|
|
7001
|
+
);
|
|
7002
|
+
}
|
|
7003
|
+
);
|
|
7004
|
+
Radio.displayName = "Radio";
|
|
7005
|
+
|
|
6866
7006
|
// src/components/ScreenReaderOnly/ScreenReaderOnly.tsx
|
|
6867
|
-
import
|
|
7007
|
+
import styled24 from "styled-components";
|
|
6868
7008
|
import { isNotNil as isNotNil8 } from "@wistia/type-guards";
|
|
6869
|
-
import { jsx as
|
|
6870
|
-
var VisuallyHidden =
|
|
6871
|
-
var VisuallyHiddenButFocusable =
|
|
7009
|
+
import { jsx as jsx183 } from "react/jsx-runtime";
|
|
7010
|
+
var VisuallyHidden = styled24.div({ ...visuallyHiddenStyle });
|
|
7011
|
+
var VisuallyHiddenButFocusable = styled24.div({
|
|
6872
7012
|
"&:not(:focus-within)": visuallyHiddenStyle
|
|
6873
7013
|
});
|
|
6874
7014
|
var ScreenReaderOnly = ({
|
|
@@ -6879,18 +7019,18 @@ var ScreenReaderOnly = ({
|
|
|
6879
7019
|
}) => {
|
|
6880
7020
|
const accessibleText = isNotNil8(text) ? text : children;
|
|
6881
7021
|
if (focusable) {
|
|
6882
|
-
return /* @__PURE__ */
|
|
7022
|
+
return /* @__PURE__ */ jsx183(VisuallyHiddenButFocusable, { ...otherProps, children: accessibleText });
|
|
6883
7023
|
}
|
|
6884
|
-
return /* @__PURE__ */
|
|
7024
|
+
return /* @__PURE__ */ jsx183(VisuallyHidden, { ...otherProps, children: accessibleText });
|
|
6885
7025
|
};
|
|
6886
7026
|
ScreenReaderOnly.displayName = "ScreenReaderOnly";
|
|
6887
7027
|
|
|
6888
7028
|
// src/components/Stack/Stack.tsx
|
|
6889
|
-
import { forwardRef as
|
|
6890
|
-
import
|
|
6891
|
-
import { jsx as
|
|
7029
|
+
import { forwardRef as forwardRef11 } from "react";
|
|
7030
|
+
import styled25 from "styled-components";
|
|
7031
|
+
import { jsx as jsx184 } from "react/jsx-runtime";
|
|
6892
7032
|
var DEFAULT_ELEMENT3 = "div";
|
|
6893
|
-
var StyledStack =
|
|
7033
|
+
var StyledStack = styled25.div`
|
|
6894
7034
|
display: flex;
|
|
6895
7035
|
flex-direction: ${({ $direction }) => $direction === "horizontal" ? "row" : "column"};
|
|
6896
7036
|
gap: ${({ $gap }) => `var(--wui-${$gap})`};
|
|
@@ -6899,11 +7039,11 @@ var StyledStack = styled24.div`
|
|
|
6899
7039
|
flex: 1;
|
|
6900
7040
|
}
|
|
6901
7041
|
`;
|
|
6902
|
-
var StackComponent =
|
|
7042
|
+
var StackComponent = forwardRef11(
|
|
6903
7043
|
({ renderAs, direction = "vertical", gap = "space-02", ...props }, ref) => {
|
|
6904
7044
|
const responsiveGap = useResponsiveProp(gap);
|
|
6905
7045
|
const responsiveDirection = useResponsiveProp(direction);
|
|
6906
|
-
return /* @__PURE__ */
|
|
7046
|
+
return /* @__PURE__ */ jsx184(
|
|
6907
7047
|
StyledStack,
|
|
6908
7048
|
{
|
|
6909
7049
|
ref,
|
|
@@ -6918,27 +7058,167 @@ var StackComponent = forwardRef10(
|
|
|
6918
7058
|
StackComponent.displayName = "Stack";
|
|
6919
7059
|
var Stack = makePolymorphic(StackComponent);
|
|
6920
7060
|
|
|
7061
|
+
// src/components/Tag/Tag.tsx
|
|
7062
|
+
import { forwardRef as forwardRef12 } from "react";
|
|
7063
|
+
import styled26 from "styled-components";
|
|
7064
|
+
import { isNil as isNil10, isNotNil as isNotNil9, isNonEmptyString as isNonEmptyString4 } from "@wistia/type-guards";
|
|
7065
|
+
import { Fragment as Fragment2, jsx as jsx185, jsxs as jsxs13 } from "react/jsx-runtime";
|
|
7066
|
+
var TagLabel = styled26.a`
|
|
7067
|
+
${({ $colorScheme }) => getColorScheme($colorScheme)};
|
|
7068
|
+
font-size: var(--wui-typography-label-4-size);
|
|
7069
|
+
font-weight: var(--wui-typography-label-4-weight);
|
|
7070
|
+
line-height: var(--wui-typography-label-4-line-height);
|
|
7071
|
+
border-radius: var(--wui-border-radius-01);
|
|
7072
|
+
align-items: center;
|
|
7073
|
+
color: var(--wui-color-text-high-contrast);
|
|
7074
|
+
text-decoration: none;
|
|
7075
|
+
padding: var(--wui-space-01);
|
|
7076
|
+
|
|
7077
|
+
:not(:only-child) {
|
|
7078
|
+
padding-right: var(--wui-space-01);
|
|
7079
|
+
}
|
|
7080
|
+
|
|
7081
|
+
:is(a):hover {
|
|
7082
|
+
background: var(--wui-color-bg-surface-secondary-hover);
|
|
7083
|
+
}
|
|
7084
|
+
|
|
7085
|
+
:is(a):active {
|
|
7086
|
+
background: var(--wui-color-bg-surface-secondary-active);
|
|
7087
|
+
}
|
|
7088
|
+
|
|
7089
|
+
:focus-visible {
|
|
7090
|
+
outline: unset;
|
|
7091
|
+
box-shadow: inset 0 0 0 2px var(--wui-color-border-secondary);
|
|
7092
|
+
}
|
|
7093
|
+
`;
|
|
7094
|
+
var TagDivider = styled26.div`
|
|
7095
|
+
${({ $colorScheme }) => getColorScheme($colorScheme)};
|
|
7096
|
+
border-left: 1px solid var(--wui-color-border);
|
|
7097
|
+
display: flex;
|
|
7098
|
+
height: 14px;
|
|
7099
|
+
width: 1px;
|
|
7100
|
+
`;
|
|
7101
|
+
var StyledRemoveButton = styled26.button`
|
|
7102
|
+
${({ $colorScheme }) => getColorScheme($colorScheme)};
|
|
7103
|
+
all: unset;
|
|
7104
|
+
cursor: pointer;
|
|
7105
|
+
display: flex;
|
|
7106
|
+
height: 22px;
|
|
7107
|
+
width: 12px;
|
|
7108
|
+
align-items: center;
|
|
7109
|
+
padding: 0 var(--wui-space-01);
|
|
7110
|
+
border-radius: var(--wui-border-radius-01);
|
|
7111
|
+
|
|
7112
|
+
svg path {
|
|
7113
|
+
fill: var(--wui-color-icon);
|
|
7114
|
+
}
|
|
7115
|
+
|
|
7116
|
+
:hover {
|
|
7117
|
+
background: var(--wui-color-bg-surface-secondary-hover);
|
|
7118
|
+
}
|
|
7119
|
+
|
|
7120
|
+
:active {
|
|
7121
|
+
background: var(--wui-color-bg-surface-secondary-active);
|
|
7122
|
+
}
|
|
7123
|
+
|
|
7124
|
+
:focus-visible {
|
|
7125
|
+
outline: unset;
|
|
7126
|
+
box-shadow: inset 0 0 0 2px var(--wui-color-border-secondary);
|
|
7127
|
+
}
|
|
7128
|
+
`;
|
|
7129
|
+
var StyledTag = styled26.div`
|
|
7130
|
+
${({ $colorScheme }) => getColorScheme($colorScheme)};
|
|
7131
|
+
align-items: center;
|
|
7132
|
+
background-color: var(--wui-color-bg-surface-secondary);
|
|
7133
|
+
border-radius: var(--wui-border-radius-01);
|
|
7134
|
+
display: inline-flex;
|
|
7135
|
+
overflow: hidden;
|
|
7136
|
+
`;
|
|
7137
|
+
var RemoveButton = ({ onClickRemove, onClickRemoveLabel, colorScheme }) => {
|
|
7138
|
+
if (isNil10(onClickRemove)) {
|
|
7139
|
+
return null;
|
|
7140
|
+
}
|
|
7141
|
+
if (isNil10(onClickRemoveLabel)) {
|
|
7142
|
+
throw new Error(
|
|
7143
|
+
"for accessibility, onClickRemoveLabel must be provided if onClickRemove is provided"
|
|
7144
|
+
);
|
|
7145
|
+
}
|
|
7146
|
+
return /* @__PURE__ */ jsxs13(Fragment2, { children: [
|
|
7147
|
+
/* @__PURE__ */ jsx185(TagDivider, { $colorScheme: colorScheme }),
|
|
7148
|
+
/* @__PURE__ */ jsxs13(
|
|
7149
|
+
StyledRemoveButton,
|
|
7150
|
+
{
|
|
7151
|
+
$colorScheme: colorScheme,
|
|
7152
|
+
onClick: onClickRemove,
|
|
7153
|
+
type: "button",
|
|
7154
|
+
children: [
|
|
7155
|
+
/* @__PURE__ */ jsx185(
|
|
7156
|
+
Icon,
|
|
7157
|
+
{
|
|
7158
|
+
size: "sm",
|
|
7159
|
+
type: "close"
|
|
7160
|
+
}
|
|
7161
|
+
),
|
|
7162
|
+
/* @__PURE__ */ jsx185(ScreenReaderOnly, { children: onClickRemoveLabel })
|
|
7163
|
+
]
|
|
7164
|
+
}
|
|
7165
|
+
)
|
|
7166
|
+
] });
|
|
7167
|
+
};
|
|
7168
|
+
var Tag = forwardRef12(
|
|
7169
|
+
({ onClickRemove, colorScheme = "inherit", href, label, onClickRemoveLabel, ...otherProps }, ref) => {
|
|
7170
|
+
const labelProps = isNotNil9(href) && isNonEmptyString4(href) ? { href, as: "a" } : { as: "span" };
|
|
7171
|
+
return /* @__PURE__ */ jsxs13(
|
|
7172
|
+
StyledTag,
|
|
7173
|
+
{
|
|
7174
|
+
ref,
|
|
7175
|
+
$colorScheme: colorScheme,
|
|
7176
|
+
...otherProps,
|
|
7177
|
+
children: [
|
|
7178
|
+
/* @__PURE__ */ jsx185(
|
|
7179
|
+
TagLabel,
|
|
7180
|
+
{
|
|
7181
|
+
...labelProps,
|
|
7182
|
+
$colorScheme: colorScheme,
|
|
7183
|
+
children: label
|
|
7184
|
+
}
|
|
7185
|
+
),
|
|
7186
|
+
/* @__PURE__ */ jsx185(
|
|
7187
|
+
RemoveButton,
|
|
7188
|
+
{
|
|
7189
|
+
colorScheme,
|
|
7190
|
+
onClickRemove,
|
|
7191
|
+
onClickRemoveLabel
|
|
7192
|
+
}
|
|
7193
|
+
)
|
|
7194
|
+
]
|
|
7195
|
+
}
|
|
7196
|
+
);
|
|
7197
|
+
}
|
|
7198
|
+
);
|
|
7199
|
+
Tag.displayName = "Tag";
|
|
7200
|
+
|
|
6921
7201
|
// src/components/WistiaLogo/WistiaLogo.tsx
|
|
6922
|
-
import
|
|
6923
|
-
import { isNotNil as
|
|
6924
|
-
import { jsx as
|
|
7202
|
+
import styled27 from "styled-components";
|
|
7203
|
+
import { isNotNil as isNotNil10 } from "@wistia/type-guards";
|
|
7204
|
+
import { jsx as jsx186, jsxs as jsxs14 } from "react/jsx-runtime";
|
|
6925
7205
|
var renderBrandmark = (brandmarkColor, iconOnly) => {
|
|
6926
7206
|
if (iconOnly) {
|
|
6927
|
-
return /* @__PURE__ */
|
|
7207
|
+
return /* @__PURE__ */ jsx186(
|
|
6928
7208
|
"g",
|
|
6929
7209
|
{
|
|
6930
7210
|
"data-testid": "ui-wistia-logo-brandmark",
|
|
6931
7211
|
fill: brandmarkColor,
|
|
6932
|
-
children: /* @__PURE__ */
|
|
7212
|
+
children: /* @__PURE__ */ jsx186("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" })
|
|
6933
7213
|
}
|
|
6934
7214
|
);
|
|
6935
7215
|
}
|
|
6936
|
-
return /* @__PURE__ */
|
|
7216
|
+
return /* @__PURE__ */ jsx186(
|
|
6937
7217
|
"g",
|
|
6938
7218
|
{
|
|
6939
7219
|
"data-testid": "ui-wistia-logo-brandmark",
|
|
6940
7220
|
fill: brandmarkColor,
|
|
6941
|
-
children: /* @__PURE__ */
|
|
7221
|
+
children: /* @__PURE__ */ jsx186("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" })
|
|
6942
7222
|
}
|
|
6943
7223
|
);
|
|
6944
7224
|
};
|
|
@@ -6946,12 +7226,12 @@ var renderLogotype = (logotypeColor, iconOnly) => {
|
|
|
6946
7226
|
if (iconOnly) {
|
|
6947
7227
|
return null;
|
|
6948
7228
|
}
|
|
6949
|
-
return /* @__PURE__ */
|
|
7229
|
+
return /* @__PURE__ */ jsx186(
|
|
6950
7230
|
"g",
|
|
6951
7231
|
{
|
|
6952
7232
|
"data-testid": "ui-wistia-logo-logotype",
|
|
6953
7233
|
fill: logotypeColor,
|
|
6954
|
-
children: /* @__PURE__ */
|
|
7234
|
+
children: /* @__PURE__ */ jsx186("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" })
|
|
6955
7235
|
}
|
|
6956
7236
|
);
|
|
6957
7237
|
};
|
|
@@ -6961,7 +7241,7 @@ var computedViewBox = (iconOnly) => {
|
|
|
6961
7241
|
}
|
|
6962
7242
|
return "0 0 144 31.47";
|
|
6963
7243
|
};
|
|
6964
|
-
var WistiaLogoComponent =
|
|
7244
|
+
var WistiaLogoComponent = styled27.svg`
|
|
6965
7245
|
height: ${({ height }) => `${height}px`};
|
|
6966
7246
|
|
|
6967
7247
|
/* ensure it will always fit on mobile */
|
|
@@ -7003,7 +7283,7 @@ var WistiaLogo = ({
|
|
|
7003
7283
|
};
|
|
7004
7284
|
const brandmarkColor = VARIANT_COLORS[variant].brandmark;
|
|
7005
7285
|
const logotypeColor = VARIANT_COLORS[variant].logotype;
|
|
7006
|
-
const Logo = /* @__PURE__ */
|
|
7286
|
+
const Logo = /* @__PURE__ */ jsxs14(
|
|
7007
7287
|
WistiaLogoComponent,
|
|
7008
7288
|
{
|
|
7009
7289
|
$hoverColor: hoverColor,
|
|
@@ -7013,14 +7293,14 @@ var WistiaLogo = ({
|
|
|
7013
7293
|
xmlns: "http://www.w3.org/2000/svg",
|
|
7014
7294
|
...otherProps,
|
|
7015
7295
|
children: [
|
|
7016
|
-
/* @__PURE__ */
|
|
7017
|
-
|
|
7296
|
+
/* @__PURE__ */ jsx186("title", { children: title }),
|
|
7297
|
+
isNotNil10(description) ? /* @__PURE__ */ jsx186("desc", { children: description }) : null,
|
|
7018
7298
|
renderBrandmark(brandmarkColor, iconOnly),
|
|
7019
7299
|
renderLogotype(logotypeColor, iconOnly)
|
|
7020
7300
|
]
|
|
7021
7301
|
}
|
|
7022
7302
|
);
|
|
7023
|
-
return href !== void 0 ? /* @__PURE__ */
|
|
7303
|
+
return href !== void 0 ? /* @__PURE__ */ jsx186("a", { href, children: Logo }) : Logo;
|
|
7024
7304
|
};
|
|
7025
7305
|
WistiaLogo.displayName = "WistiaLogo";
|
|
7026
7306
|
export {
|
|
@@ -7045,10 +7325,12 @@ export {
|
|
|
7045
7325
|
MenuItemLabel,
|
|
7046
7326
|
MenuLabel,
|
|
7047
7327
|
MenuRadioGroup,
|
|
7328
|
+
Radio,
|
|
7048
7329
|
RadioMenuItem,
|
|
7049
7330
|
ScreenReaderOnly,
|
|
7050
7331
|
Stack,
|
|
7051
7332
|
SubMenu,
|
|
7333
|
+
Tag,
|
|
7052
7334
|
Text,
|
|
7053
7335
|
Tooltip,
|
|
7054
7336
|
UIProvider,
|