@octaviaflow/core 3.1.0-beta.78 → 3.1.0-beta.80
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/chunk-FJHUWP4K.js +2756 -0
- package/dist/chunk-FJHUWP4K.js.map +1 -0
- package/dist/chunk-PB4O5GEF.js +5701 -0
- package/dist/chunk-PB4O5GEF.js.map +1 -0
- package/dist/chunk-XD5G2K2M.js +1646 -0
- package/dist/chunk-XD5G2K2M.js.map +1 -0
- package/dist/components/AuthScreen/AuthScreen.d.ts +17 -2
- package/dist/components/AuthScreen/AuthScreen.d.ts.map +1 -1
- package/dist/components/Combobox/Combobox.d.ts.map +1 -1
- package/dist/components/ContextMenu/ContextMenu.d.ts.map +1 -1
- package/dist/components/DatePicker/DatePicker.d.ts.map +1 -1
- package/dist/components/Dialog/Dialog.d.ts.map +1 -1
- package/dist/components/DropdownMenu/DropdownMenu.d.ts.map +1 -1
- package/dist/components/MultiSelect/MultiSelect.d.ts.map +1 -1
- package/dist/components/Select/Select.d.ts.map +1 -1
- package/dist/index.cjs +636 -555
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +270 -193
- package/dist/index.js.map +1 -1
- package/dist/marketing.cjs +1 -0
- package/dist/marketing.cjs.map +1 -1
- package/dist/marketing.js +2 -2
- package/dist/styles.css +1 -1
- package/dist/workflow.cjs +2 -0
- package/dist/workflow.cjs.map +1 -1
- package/dist/workflow.js +2 -2
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -26,7 +26,7 @@ import {
|
|
|
26
26
|
handleCentre,
|
|
27
27
|
usePasswordStrength,
|
|
28
28
|
useViewportOrNull
|
|
29
|
-
} from "./chunk-
|
|
29
|
+
} from "./chunk-PB4O5GEF.js";
|
|
30
30
|
import {
|
|
31
31
|
AVATAR_PALETTE_SIZE,
|
|
32
32
|
Avatar,
|
|
@@ -50,7 +50,7 @@ import {
|
|
|
50
50
|
useTextareaCommands,
|
|
51
51
|
useTextareaSelection,
|
|
52
52
|
useTextareaTools
|
|
53
|
-
} from "./chunk-
|
|
53
|
+
} from "./chunk-XD5G2K2M.js";
|
|
54
54
|
import {
|
|
55
55
|
$05678f3aee5e7d1a$export$6d08773d2e66f8f2,
|
|
56
56
|
$384704861d32dbed$export$bca9d026f8e704eb,
|
|
@@ -64,7 +64,7 @@ import {
|
|
|
64
64
|
Spinner,
|
|
65
65
|
Tooltip,
|
|
66
66
|
resolveAccessibleName
|
|
67
|
-
} from "./chunk-
|
|
67
|
+
} from "./chunk-FJHUWP4K.js";
|
|
68
68
|
import {
|
|
69
69
|
__export,
|
|
70
70
|
cn
|
|
@@ -1186,6 +1186,7 @@ import {
|
|
|
1186
1186
|
useId as useId4,
|
|
1187
1187
|
useState as useState3
|
|
1188
1188
|
} from "react";
|
|
1189
|
+
import { CheckmarkFilledIcon } from "@octaviaflow/icons";
|
|
1189
1190
|
|
|
1190
1191
|
// src/components/SocialButton/SocialButton.tsx
|
|
1191
1192
|
import { LogoGithubIcon, LogoLinkedinIcon, LogoXIcon } from "@octaviaflow/icons";
|
|
@@ -1560,19 +1561,23 @@ function AuthFormHeader({ logo, title, titleId, description, headingLevel }) {
|
|
|
1560
1561
|
description && /* @__PURE__ */ jsx6("p", { className: "ods-auth-form__desc", children: description })
|
|
1561
1562
|
] });
|
|
1562
1563
|
}
|
|
1563
|
-
function AuthFormSocial({ providers, onSocialClick, dividerLabel, disabled }) {
|
|
1564
|
+
function AuthFormSocial({ providers, onSocialClick, dividerLabel, disabled, position = "bottom" }) {
|
|
1564
1565
|
if (!providers || providers.length === 0) return null;
|
|
1565
|
-
|
|
1566
|
+
const row = /* @__PURE__ */ jsx6("div", { className: "ods-auth-form__social", children: providers.map((provider) => /* @__PURE__ */ jsx6(
|
|
1567
|
+
SocialButton,
|
|
1568
|
+
{
|
|
1569
|
+
provider,
|
|
1570
|
+
disabled,
|
|
1571
|
+
onClick: () => onSocialClick?.(provider)
|
|
1572
|
+
},
|
|
1573
|
+
provider
|
|
1574
|
+
)) });
|
|
1575
|
+
return position === "top" ? /* @__PURE__ */ jsxs6(Fragment4, { children: [
|
|
1576
|
+
row,
|
|
1577
|
+
/* @__PURE__ */ jsx6(AuthDivider, { children: dividerLabel })
|
|
1578
|
+
] }) : /* @__PURE__ */ jsxs6(Fragment4, { children: [
|
|
1566
1579
|
/* @__PURE__ */ jsx6(AuthDivider, { children: dividerLabel }),
|
|
1567
|
-
|
|
1568
|
-
SocialButton,
|
|
1569
|
-
{
|
|
1570
|
-
provider,
|
|
1571
|
-
disabled,
|
|
1572
|
-
onClick: () => onSocialClick?.(provider)
|
|
1573
|
-
},
|
|
1574
|
-
provider
|
|
1575
|
-
)) })
|
|
1580
|
+
row
|
|
1576
1581
|
] });
|
|
1577
1582
|
}
|
|
1578
1583
|
function AuthFormFooterLink({ prompt, label, href, onClick }) {
|
|
@@ -1605,6 +1610,7 @@ function AuthLoginForm({
|
|
|
1605
1610
|
forgotLabel = "Forgot your password?",
|
|
1606
1611
|
socialProviders = ["google"],
|
|
1607
1612
|
onSocialClick,
|
|
1613
|
+
socialPosition = "bottom",
|
|
1608
1614
|
socialDividerLabel = "Or, log in with",
|
|
1609
1615
|
registerHref,
|
|
1610
1616
|
onRegisterClick,
|
|
@@ -1646,6 +1652,16 @@ function AuthLoginForm({
|
|
|
1646
1652
|
error && /* @__PURE__ */ jsx6(Banner, { variant: "error", children: error }),
|
|
1647
1653
|
success && /* @__PURE__ */ jsx6(Banner, { variant: "success", children: success })
|
|
1648
1654
|
] }),
|
|
1655
|
+
socialPosition === "top" && /* @__PURE__ */ jsx6(
|
|
1656
|
+
AuthFormSocial,
|
|
1657
|
+
{
|
|
1658
|
+
providers: socialProviders,
|
|
1659
|
+
onSocialClick,
|
|
1660
|
+
dividerLabel: socialDividerLabel,
|
|
1661
|
+
disabled: loading,
|
|
1662
|
+
position: "top"
|
|
1663
|
+
}
|
|
1664
|
+
),
|
|
1649
1665
|
/* @__PURE__ */ jsxs6("div", { className: "ods-auth-form__fields", children: [
|
|
1650
1666
|
/* @__PURE__ */ jsx6(
|
|
1651
1667
|
Input,
|
|
@@ -1688,7 +1704,7 @@ function AuthLoginForm({
|
|
|
1688
1704
|
hasForgot && (forgotHref ? /* @__PURE__ */ jsx6("a", { className: "ods-auth-form__link", href: forgotHref, onClick: onForgotClick, children: forgotLabel }) : /* @__PURE__ */ jsx6("button", { type: "button", className: "ods-auth-form__link", onClick: onForgotClick, children: forgotLabel }))
|
|
1689
1705
|
] }),
|
|
1690
1706
|
/* @__PURE__ */ jsx6(Button, { type: "submit", variant: "primary", fullWidth: true, loading, children: submitLabel }),
|
|
1691
|
-
/* @__PURE__ */ jsx6(
|
|
1707
|
+
socialPosition === "bottom" && /* @__PURE__ */ jsx6(
|
|
1692
1708
|
AuthFormSocial,
|
|
1693
1709
|
{
|
|
1694
1710
|
providers: socialProviders,
|
|
@@ -1742,6 +1758,10 @@ function AuthSignupForm({
|
|
|
1742
1758
|
socialProviders = ["google"],
|
|
1743
1759
|
onSocialClick,
|
|
1744
1760
|
socialDividerLabel = "Or, sign up with",
|
|
1761
|
+
layout = "form-first",
|
|
1762
|
+
emailCtaLabel = "Sign up with email",
|
|
1763
|
+
backLabel = "Back to all options",
|
|
1764
|
+
highlights,
|
|
1745
1765
|
signInHref,
|
|
1746
1766
|
onSignInClick,
|
|
1747
1767
|
signInPrompt = "Already have an account?",
|
|
@@ -1761,6 +1781,8 @@ function AuthSignupForm({
|
|
|
1761
1781
|
const [isCompanyAccount, setIsCompanyAccount] = useState3(false);
|
|
1762
1782
|
const [companyName, setCompanyName] = useState3("");
|
|
1763
1783
|
const [domain, setDomain] = useState3("");
|
|
1784
|
+
const [entryMode, setEntryMode] = useState3("choice");
|
|
1785
|
+
const choiceScreen = layout === "choice-first" && entryMode === "choice";
|
|
1764
1786
|
useEffect(() => {
|
|
1765
1787
|
if (!showCompanyToggle || !isCompanyAccount || domain) return;
|
|
1766
1788
|
const at = email.indexOf("@");
|
|
@@ -1801,138 +1823,180 @@ function AuthSignupForm({
|
|
|
1801
1823
|
error && /* @__PURE__ */ jsx6(Banner, { variant: "error", children: error }),
|
|
1802
1824
|
success && /* @__PURE__ */ jsx6(Banner, { variant: "success", children: success })
|
|
1803
1825
|
] }),
|
|
1804
|
-
/* @__PURE__ */ jsxs6("div", { className: "ods-auth-
|
|
1805
|
-
|
|
1806
|
-
|
|
1826
|
+
choiceScreen && /* @__PURE__ */ jsxs6("div", { className: "ods-auth-form__choice", children: [
|
|
1827
|
+
/* @__PURE__ */ jsx6("div", { className: "ods-auth-form__social", children: (socialProviders ?? []).map((provider) => /* @__PURE__ */ jsx6(
|
|
1828
|
+
SocialButton,
|
|
1829
|
+
{
|
|
1830
|
+
provider,
|
|
1831
|
+
disabled: loading,
|
|
1832
|
+
onClick: () => onSocialClick?.(provider)
|
|
1833
|
+
},
|
|
1834
|
+
provider
|
|
1835
|
+
)) }),
|
|
1836
|
+
/* @__PURE__ */ jsx6(AuthDivider, { children: "or" }),
|
|
1837
|
+
/* @__PURE__ */ jsx6(
|
|
1838
|
+
Button,
|
|
1839
|
+
{
|
|
1840
|
+
type: "button",
|
|
1841
|
+
variant: "secondary",
|
|
1842
|
+
fullWidth: true,
|
|
1843
|
+
disabled: loading,
|
|
1844
|
+
onClick: () => setEntryMode("email"),
|
|
1845
|
+
children: emailCtaLabel
|
|
1846
|
+
}
|
|
1847
|
+
),
|
|
1848
|
+
highlights && highlights.length > 0 && /* @__PURE__ */ jsx6("ul", { className: "ods-auth-form__highlights", children: highlights.map((item, i) => (
|
|
1849
|
+
// biome-ignore lint/suspicious/noArrayIndexKey: static copy row
|
|
1850
|
+
/* @__PURE__ */ jsxs6("li", { children: [
|
|
1851
|
+
/* @__PURE__ */ jsx6(CheckmarkFilledIcon, { size: "sm", "aria-hidden": "true" }),
|
|
1852
|
+
item
|
|
1853
|
+
] }, i)
|
|
1854
|
+
)) })
|
|
1855
|
+
] }),
|
|
1856
|
+
!choiceScreen && /* @__PURE__ */ jsxs6(Fragment4, { children: [
|
|
1857
|
+
layout === "choice-first" && /* @__PURE__ */ jsx6(
|
|
1858
|
+
"button",
|
|
1859
|
+
{
|
|
1860
|
+
type: "button",
|
|
1861
|
+
className: "ods-auth-form__back",
|
|
1862
|
+
onClick: () => setEntryMode("choice"),
|
|
1863
|
+
disabled: loading,
|
|
1864
|
+
children: backLabel
|
|
1865
|
+
}
|
|
1866
|
+
),
|
|
1867
|
+
/* @__PURE__ */ jsxs6("div", { className: "ods-auth-form__fields", children: [
|
|
1868
|
+
nameLayout === "split" ? /* @__PURE__ */ jsxs6("div", { className: "ods-auth-form__grid2", children: [
|
|
1869
|
+
/* @__PURE__ */ jsx6(
|
|
1870
|
+
Input,
|
|
1871
|
+
{
|
|
1872
|
+
label: firstNameLabel,
|
|
1873
|
+
type: "text",
|
|
1874
|
+
name: "firstName",
|
|
1875
|
+
autoComplete: "given-name",
|
|
1876
|
+
required: true,
|
|
1877
|
+
placeholder: firstNamePlaceholder,
|
|
1878
|
+
value: firstName,
|
|
1879
|
+
onChange: (e) => setFirstName(e.target.value),
|
|
1880
|
+
disabled: loading
|
|
1881
|
+
}
|
|
1882
|
+
),
|
|
1883
|
+
/* @__PURE__ */ jsx6(
|
|
1884
|
+
Input,
|
|
1885
|
+
{
|
|
1886
|
+
label: lastNameLabel,
|
|
1887
|
+
type: "text",
|
|
1888
|
+
name: "lastName",
|
|
1889
|
+
autoComplete: "family-name",
|
|
1890
|
+
required: true,
|
|
1891
|
+
placeholder: lastNamePlaceholder,
|
|
1892
|
+
value: lastName,
|
|
1893
|
+
onChange: (e) => setLastName(e.target.value),
|
|
1894
|
+
disabled: loading
|
|
1895
|
+
}
|
|
1896
|
+
)
|
|
1897
|
+
] }) : /* @__PURE__ */ jsx6(
|
|
1807
1898
|
Input,
|
|
1808
1899
|
{
|
|
1809
|
-
label:
|
|
1900
|
+
label: nameLabel,
|
|
1810
1901
|
type: "text",
|
|
1811
|
-
name: "
|
|
1812
|
-
autoComplete: "
|
|
1902
|
+
name: "name",
|
|
1903
|
+
autoComplete: "name",
|
|
1813
1904
|
required: true,
|
|
1814
|
-
placeholder:
|
|
1815
|
-
value:
|
|
1816
|
-
onChange: (e) =>
|
|
1905
|
+
placeholder: namePlaceholder,
|
|
1906
|
+
value: name,
|
|
1907
|
+
onChange: (e) => setName(e.target.value),
|
|
1817
1908
|
disabled: loading
|
|
1818
1909
|
}
|
|
1819
1910
|
),
|
|
1820
1911
|
/* @__PURE__ */ jsx6(
|
|
1821
1912
|
Input,
|
|
1822
1913
|
{
|
|
1823
|
-
label:
|
|
1824
|
-
type: "
|
|
1825
|
-
name: "
|
|
1826
|
-
autoComplete: "
|
|
1914
|
+
label: emailLabel,
|
|
1915
|
+
type: "email",
|
|
1916
|
+
name: "email",
|
|
1917
|
+
autoComplete: "email",
|
|
1827
1918
|
required: true,
|
|
1828
|
-
placeholder:
|
|
1829
|
-
value:
|
|
1830
|
-
onChange: (e) =>
|
|
1919
|
+
placeholder: emailPlaceholder,
|
|
1920
|
+
value: email,
|
|
1921
|
+
onChange: (e) => setEmail(e.target.value),
|
|
1922
|
+
disabled: loading
|
|
1923
|
+
}
|
|
1924
|
+
),
|
|
1925
|
+
/* @__PURE__ */ jsx6(
|
|
1926
|
+
PasswordInput,
|
|
1927
|
+
{
|
|
1928
|
+
label: passwordLabel,
|
|
1929
|
+
name: "password",
|
|
1930
|
+
autoComplete: "new-password",
|
|
1931
|
+
required: true,
|
|
1932
|
+
placeholder: passwordPlaceholder,
|
|
1933
|
+
value: password,
|
|
1934
|
+
onChange: setPassword,
|
|
1935
|
+
strengthRules: passwordStrengthRules,
|
|
1831
1936
|
disabled: loading
|
|
1832
1937
|
}
|
|
1833
1938
|
)
|
|
1834
|
-
] })
|
|
1835
|
-
|
|
1836
|
-
|
|
1837
|
-
|
|
1838
|
-
|
|
1839
|
-
|
|
1840
|
-
|
|
1841
|
-
|
|
1842
|
-
|
|
1843
|
-
|
|
1844
|
-
|
|
1845
|
-
|
|
1846
|
-
|
|
1847
|
-
|
|
1848
|
-
|
|
1849
|
-
|
|
1939
|
+
] }),
|
|
1940
|
+
showCompanyToggle && /* @__PURE__ */ jsxs6(Fragment4, { children: [
|
|
1941
|
+
/* @__PURE__ */ jsx6(
|
|
1942
|
+
Checkbox,
|
|
1943
|
+
{
|
|
1944
|
+
label: companyToggleLabel,
|
|
1945
|
+
checked: isCompanyAccount,
|
|
1946
|
+
onChange: setIsCompanyAccount,
|
|
1947
|
+
disabled: loading
|
|
1948
|
+
}
|
|
1949
|
+
),
|
|
1950
|
+
isCompanyAccount && /* @__PURE__ */ jsxs6("div", { className: "ods-auth-form__grid2", children: [
|
|
1951
|
+
/* @__PURE__ */ jsx6(
|
|
1952
|
+
Input,
|
|
1953
|
+
{
|
|
1954
|
+
label: companyNameLabel,
|
|
1955
|
+
type: "text",
|
|
1956
|
+
name: "companyName",
|
|
1957
|
+
autoComplete: "organization",
|
|
1958
|
+
required: true,
|
|
1959
|
+
placeholder: companyNamePlaceholder,
|
|
1960
|
+
value: companyName,
|
|
1961
|
+
onChange: (e) => setCompanyName(e.target.value),
|
|
1962
|
+
disabled: loading
|
|
1963
|
+
}
|
|
1964
|
+
),
|
|
1965
|
+
/* @__PURE__ */ jsx6(
|
|
1966
|
+
Input,
|
|
1967
|
+
{
|
|
1968
|
+
label: domainLabel,
|
|
1969
|
+
type: "text",
|
|
1970
|
+
name: "domain",
|
|
1971
|
+
placeholder: domainPlaceholder,
|
|
1972
|
+
value: domain,
|
|
1973
|
+
onChange: (e) => setDomain(e.target.value),
|
|
1974
|
+
disabled: loading
|
|
1975
|
+
}
|
|
1976
|
+
)
|
|
1977
|
+
] })
|
|
1978
|
+
] }),
|
|
1979
|
+
showTerms && /* @__PURE__ */ jsx6(
|
|
1980
|
+
Checkbox,
|
|
1850
1981
|
{
|
|
1851
|
-
label:
|
|
1852
|
-
|
|
1853
|
-
|
|
1854
|
-
autoComplete: "email",
|
|
1982
|
+
label: termsLabel,
|
|
1983
|
+
checked: acceptTerms,
|
|
1984
|
+
onChange: setAcceptTerms,
|
|
1855
1985
|
required: true,
|
|
1856
|
-
placeholder: emailPlaceholder,
|
|
1857
|
-
value: email,
|
|
1858
|
-
onChange: (e) => setEmail(e.target.value),
|
|
1859
1986
|
disabled: loading
|
|
1860
1987
|
}
|
|
1861
1988
|
),
|
|
1862
|
-
/* @__PURE__ */ jsx6(
|
|
1863
|
-
|
|
1989
|
+
/* @__PURE__ */ jsx6(Button, { type: "submit", variant: "primary", fullWidth: true, loading, children: submitLabel }),
|
|
1990
|
+
layout === "form-first" && /* @__PURE__ */ jsx6(
|
|
1991
|
+
AuthFormSocial,
|
|
1864
1992
|
{
|
|
1865
|
-
|
|
1866
|
-
|
|
1867
|
-
|
|
1868
|
-
required: true,
|
|
1869
|
-
placeholder: passwordPlaceholder,
|
|
1870
|
-
value: password,
|
|
1871
|
-
onChange: setPassword,
|
|
1872
|
-
strengthRules: passwordStrengthRules,
|
|
1993
|
+
providers: socialProviders,
|
|
1994
|
+
onSocialClick,
|
|
1995
|
+
dividerLabel: socialDividerLabel,
|
|
1873
1996
|
disabled: loading
|
|
1874
1997
|
}
|
|
1875
1998
|
)
|
|
1876
1999
|
] }),
|
|
1877
|
-
showCompanyToggle && /* @__PURE__ */ jsxs6(Fragment4, { children: [
|
|
1878
|
-
/* @__PURE__ */ jsx6(
|
|
1879
|
-
Checkbox,
|
|
1880
|
-
{
|
|
1881
|
-
label: companyToggleLabel,
|
|
1882
|
-
checked: isCompanyAccount,
|
|
1883
|
-
onChange: setIsCompanyAccount,
|
|
1884
|
-
disabled: loading
|
|
1885
|
-
}
|
|
1886
|
-
),
|
|
1887
|
-
isCompanyAccount && /* @__PURE__ */ jsxs6("div", { className: "ods-auth-form__grid2", children: [
|
|
1888
|
-
/* @__PURE__ */ jsx6(
|
|
1889
|
-
Input,
|
|
1890
|
-
{
|
|
1891
|
-
label: companyNameLabel,
|
|
1892
|
-
type: "text",
|
|
1893
|
-
name: "companyName",
|
|
1894
|
-
autoComplete: "organization",
|
|
1895
|
-
required: true,
|
|
1896
|
-
placeholder: companyNamePlaceholder,
|
|
1897
|
-
value: companyName,
|
|
1898
|
-
onChange: (e) => setCompanyName(e.target.value),
|
|
1899
|
-
disabled: loading
|
|
1900
|
-
}
|
|
1901
|
-
),
|
|
1902
|
-
/* @__PURE__ */ jsx6(
|
|
1903
|
-
Input,
|
|
1904
|
-
{
|
|
1905
|
-
label: domainLabel,
|
|
1906
|
-
type: "text",
|
|
1907
|
-
name: "domain",
|
|
1908
|
-
placeholder: domainPlaceholder,
|
|
1909
|
-
value: domain,
|
|
1910
|
-
onChange: (e) => setDomain(e.target.value),
|
|
1911
|
-
disabled: loading
|
|
1912
|
-
}
|
|
1913
|
-
)
|
|
1914
|
-
] })
|
|
1915
|
-
] }),
|
|
1916
|
-
showTerms && /* @__PURE__ */ jsx6(
|
|
1917
|
-
Checkbox,
|
|
1918
|
-
{
|
|
1919
|
-
label: termsLabel,
|
|
1920
|
-
checked: acceptTerms,
|
|
1921
|
-
onChange: setAcceptTerms,
|
|
1922
|
-
required: true,
|
|
1923
|
-
disabled: loading
|
|
1924
|
-
}
|
|
1925
|
-
),
|
|
1926
|
-
/* @__PURE__ */ jsx6(Button, { type: "submit", variant: "primary", fullWidth: true, loading, children: submitLabel }),
|
|
1927
|
-
/* @__PURE__ */ jsx6(
|
|
1928
|
-
AuthFormSocial,
|
|
1929
|
-
{
|
|
1930
|
-
providers: socialProviders,
|
|
1931
|
-
onSocialClick,
|
|
1932
|
-
dividerLabel: socialDividerLabel,
|
|
1933
|
-
disabled: loading
|
|
1934
|
-
}
|
|
1935
|
-
),
|
|
1936
2000
|
footer ?? /* @__PURE__ */ jsx6(
|
|
1937
2001
|
AuthFormFooterLink,
|
|
1938
2002
|
{
|
|
@@ -6977,7 +7041,11 @@ var DialogContent = forwardRef31(function DialogContent2({
|
|
|
6977
7041
|
isOpen: open,
|
|
6978
7042
|
onClose,
|
|
6979
7043
|
isDismissable: closeOnOverlayClick,
|
|
6980
|
-
isKeyboardDismissDisabled: !closeOnEsc
|
|
7044
|
+
isKeyboardDismissDisabled: !closeOnEsc,
|
|
7045
|
+
// Floating layers (Select/Combobox/DropdownMenu/DatePicker dropdowns)
|
|
7046
|
+
// portal to <body>, OUTSIDE the dialog subtree — without this, picking
|
|
7047
|
+
// an option counted as an outside click and closed the dialog.
|
|
7048
|
+
shouldCloseOnInteractOutside: (element) => !(element instanceof Element && element.closest("[data-ods-floating]"))
|
|
6981
7049
|
},
|
|
6982
7050
|
overlayRef
|
|
6983
7051
|
);
|
|
@@ -7644,76 +7712,82 @@ var ContextMenu = forwardRef34(
|
|
|
7644
7712
|
);
|
|
7645
7713
|
}
|
|
7646
7714
|
const portalTarget = container ?? document.body;
|
|
7647
|
-
const panel = /* @__PURE__ */ jsx42(
|
|
7648
|
-
|
|
7715
|
+
const panel = /* @__PURE__ */ jsx42(
|
|
7716
|
+
AnimatePresence8,
|
|
7649
7717
|
{
|
|
7650
|
-
|
|
7651
|
-
|
|
7652
|
-
|
|
7653
|
-
|
|
7654
|
-
|
|
7655
|
-
ref
|
|
7656
|
-
|
|
7657
|
-
|
|
7658
|
-
|
|
7659
|
-
|
|
7660
|
-
|
|
7661
|
-
tabIndex: -1,
|
|
7662
|
-
className: cn("ods-ctxmenu", className),
|
|
7663
|
-
style: {
|
|
7664
|
-
top: adjustedPosition.y,
|
|
7665
|
-
left: adjustedPosition.x
|
|
7666
|
-
},
|
|
7667
|
-
initial: reducedMotion ? void 0 : { opacity: 0, scale: 0.96 },
|
|
7668
|
-
animate: reducedMotion ? void 0 : { opacity: 1, scale: 1 },
|
|
7669
|
-
exit: reducedMotion ? void 0 : { opacity: 0, scale: 0.96 },
|
|
7670
|
-
transition: { duration: 0.12 },
|
|
7671
|
-
onKeyDown: handleKeyDown,
|
|
7672
|
-
onContextMenu: (e) => e.preventDefault(),
|
|
7673
|
-
children: /* @__PURE__ */ jsx42("ul", { className: "ods-ctxmenu__list", children: items.map((item, i) => {
|
|
7674
|
-
if (item.separator) {
|
|
7675
|
-
return /* @__PURE__ */ jsx42(
|
|
7676
|
-
"li",
|
|
7677
|
-
{
|
|
7678
|
-
role: "separator",
|
|
7679
|
-
className: "ods-ctxmenu__separator"
|
|
7680
|
-
},
|
|
7681
|
-
`sep-${i}`
|
|
7682
|
-
);
|
|
7683
|
-
}
|
|
7684
|
-
const isActive2 = i === activeIndex;
|
|
7685
|
-
return /* @__PURE__ */ jsxs42(
|
|
7686
|
-
"li",
|
|
7687
|
-
{
|
|
7688
|
-
role: "menuitem",
|
|
7689
|
-
"aria-disabled": item.disabled || void 0,
|
|
7690
|
-
tabIndex: -1,
|
|
7691
|
-
className: cn(
|
|
7692
|
-
"ods-ctxmenu__item",
|
|
7693
|
-
isActive2 && "ods-ctxmenu__item--active",
|
|
7694
|
-
item.danger && "ods-ctxmenu__item--danger",
|
|
7695
|
-
item.disabled && "ods-ctxmenu__item--disabled"
|
|
7696
|
-
),
|
|
7697
|
-
onMouseEnter: () => !item.disabled && setActiveIndex(i),
|
|
7698
|
-
onClick: () => handleItemClick(item),
|
|
7699
|
-
children: [
|
|
7700
|
-
item.icon && /* @__PURE__ */ jsx42(
|
|
7701
|
-
"span",
|
|
7702
|
-
{
|
|
7703
|
-
className: "ods-ctxmenu__icon",
|
|
7704
|
-
"aria-hidden": "true",
|
|
7705
|
-
children: item.icon
|
|
7706
|
-
}
|
|
7707
|
-
),
|
|
7708
|
-
/* @__PURE__ */ jsx42("span", { className: "ods-ctxmenu__label", children: item.label }),
|
|
7709
|
-
item.shortcut && /* @__PURE__ */ jsx42("kbd", { className: "ods-ctxmenu__shortcut", children: item.shortcut })
|
|
7710
|
-
]
|
|
7718
|
+
"data-ods-floating": "",
|
|
7719
|
+
children: open && /* @__PURE__ */ jsx42(
|
|
7720
|
+
motion10.div,
|
|
7721
|
+
{
|
|
7722
|
+
...rest,
|
|
7723
|
+
ref: (el) => {
|
|
7724
|
+
panelRef.current = el;
|
|
7725
|
+
if (typeof ref === "function") ref(el);
|
|
7726
|
+
else if (ref) {
|
|
7727
|
+
ref.current = el;
|
|
7728
|
+
}
|
|
7711
7729
|
},
|
|
7712
|
-
|
|
7713
|
-
|
|
7714
|
-
|
|
7730
|
+
id: baseId,
|
|
7731
|
+
role: "menu",
|
|
7732
|
+
"aria-label": ariaLabel,
|
|
7733
|
+
tabIndex: -1,
|
|
7734
|
+
className: cn("ods-ctxmenu", className),
|
|
7735
|
+
style: {
|
|
7736
|
+
top: adjustedPosition.y,
|
|
7737
|
+
left: adjustedPosition.x
|
|
7738
|
+
},
|
|
7739
|
+
initial: reducedMotion ? void 0 : { opacity: 0, scale: 0.96 },
|
|
7740
|
+
animate: reducedMotion ? void 0 : { opacity: 1, scale: 1 },
|
|
7741
|
+
exit: reducedMotion ? void 0 : { opacity: 0, scale: 0.96 },
|
|
7742
|
+
transition: { duration: 0.12 },
|
|
7743
|
+
onKeyDown: handleKeyDown,
|
|
7744
|
+
onContextMenu: (e) => e.preventDefault(),
|
|
7745
|
+
children: /* @__PURE__ */ jsx42("ul", { className: "ods-ctxmenu__list", children: items.map((item, i) => {
|
|
7746
|
+
if (item.separator) {
|
|
7747
|
+
return /* @__PURE__ */ jsx42(
|
|
7748
|
+
"li",
|
|
7749
|
+
{
|
|
7750
|
+
role: "separator",
|
|
7751
|
+
className: "ods-ctxmenu__separator"
|
|
7752
|
+
},
|
|
7753
|
+
`sep-${i}`
|
|
7754
|
+
);
|
|
7755
|
+
}
|
|
7756
|
+
const isActive2 = i === activeIndex;
|
|
7757
|
+
return /* @__PURE__ */ jsxs42(
|
|
7758
|
+
"li",
|
|
7759
|
+
{
|
|
7760
|
+
role: "menuitem",
|
|
7761
|
+
"aria-disabled": item.disabled || void 0,
|
|
7762
|
+
tabIndex: -1,
|
|
7763
|
+
className: cn(
|
|
7764
|
+
"ods-ctxmenu__item",
|
|
7765
|
+
isActive2 && "ods-ctxmenu__item--active",
|
|
7766
|
+
item.danger && "ods-ctxmenu__item--danger",
|
|
7767
|
+
item.disabled && "ods-ctxmenu__item--disabled"
|
|
7768
|
+
),
|
|
7769
|
+
onMouseEnter: () => !item.disabled && setActiveIndex(i),
|
|
7770
|
+
onClick: () => handleItemClick(item),
|
|
7771
|
+
children: [
|
|
7772
|
+
item.icon && /* @__PURE__ */ jsx42(
|
|
7773
|
+
"span",
|
|
7774
|
+
{
|
|
7775
|
+
className: "ods-ctxmenu__icon",
|
|
7776
|
+
"aria-hidden": "true",
|
|
7777
|
+
children: item.icon
|
|
7778
|
+
}
|
|
7779
|
+
),
|
|
7780
|
+
/* @__PURE__ */ jsx42("span", { className: "ods-ctxmenu__label", children: item.label }),
|
|
7781
|
+
item.shortcut && /* @__PURE__ */ jsx42("kbd", { className: "ods-ctxmenu__shortcut", children: item.shortcut })
|
|
7782
|
+
]
|
|
7783
|
+
},
|
|
7784
|
+
`${item.label}-${i}`
|
|
7785
|
+
);
|
|
7786
|
+
}) })
|
|
7787
|
+
}
|
|
7788
|
+
)
|
|
7715
7789
|
}
|
|
7716
|
-
)
|
|
7790
|
+
);
|
|
7717
7791
|
return /* @__PURE__ */ jsxs42(Fragment16, { children: [
|
|
7718
7792
|
/* @__PURE__ */ jsx42(
|
|
7719
7793
|
"span",
|
|
@@ -10648,6 +10722,7 @@ var DatePicker = forwardRef37(
|
|
|
10648
10722
|
"div",
|
|
10649
10723
|
{
|
|
10650
10724
|
ref: popoverRef,
|
|
10725
|
+
"data-ods-floating": "",
|
|
10651
10726
|
className: "ods-datepicker__popover",
|
|
10652
10727
|
role: "dialog",
|
|
10653
10728
|
"aria-modal": "false",
|
|
@@ -11139,6 +11214,7 @@ function MenuPopup({
|
|
|
11139
11214
|
const portalContent = /* @__PURE__ */ jsx50(AnimatePresence9, { children: state.isOpen && /* @__PURE__ */ jsx50(
|
|
11140
11215
|
motion12.ul,
|
|
11141
11216
|
{
|
|
11217
|
+
"data-ods-floating": "",
|
|
11142
11218
|
...(() => {
|
|
11143
11219
|
const { onDrag, onDragStart, onDragEnd, onAnimationStart, ...safe } = menuProps;
|
|
11144
11220
|
return safe;
|
|
@@ -15658,7 +15734,7 @@ function FlowCanvas2({
|
|
|
15658
15734
|
// src/components/FlowDoctor/FlowDoctor.tsx
|
|
15659
15735
|
import {
|
|
15660
15736
|
ArrowRightIcon as ArrowRightIcon3,
|
|
15661
|
-
CheckmarkFilledIcon,
|
|
15737
|
+
CheckmarkFilledIcon as CheckmarkFilledIcon2,
|
|
15662
15738
|
CheckmarkIcon as CheckmarkIcon8,
|
|
15663
15739
|
ErrorFilledIcon,
|
|
15664
15740
|
StethoscopeIcon,
|
|
@@ -15680,7 +15756,7 @@ function flowDoctorSummary(issues) {
|
|
|
15680
15756
|
].filter(Boolean).join(", ");
|
|
15681
15757
|
}
|
|
15682
15758
|
var VERDICT_ICON = {
|
|
15683
|
-
clean: /* @__PURE__ */ jsx66(
|
|
15759
|
+
clean: /* @__PURE__ */ jsx66(CheckmarkFilledIcon2, { size: "md", "aria-hidden": "true" }),
|
|
15684
15760
|
warning: /* @__PURE__ */ jsx66(WarningFilledIcon, { size: "md", "aria-hidden": "true" }),
|
|
15685
15761
|
error: /* @__PURE__ */ jsx66(ErrorFilledIcon, { size: "md", "aria-hidden": "true" })
|
|
15686
15762
|
};
|
|
@@ -25778,6 +25854,7 @@ var MultiSelect = forwardRef65(
|
|
|
25778
25854
|
motion20.div,
|
|
25779
25855
|
{
|
|
25780
25856
|
ref: dropdownRef,
|
|
25857
|
+
"data-ods-floating": "",
|
|
25781
25858
|
className: "ods-multiselect__dropdown",
|
|
25782
25859
|
style: {
|
|
25783
25860
|
position: "fixed",
|